在linux下用 g++ pi.cpp -o pi -lm 编译。

//蒙特卡洛法求圆周率

#include

#include

#include

#include

using namespace std;

double FindPi(const long n)

{

srand(time(NULL));

long sum = 0;

double x = 0.0, y = 0.0;

for (long i = 0; i < n; i++)

{

x = (double)(rand())/(double)RAND_MAX;

y = (double)(rand())/(double)RAND_MAX;

if (x*x + y*y <= 1)

{

sum++;

}

if (i % 10000 == 0)

{

system("clear");

cout<

}

}

return 4.0*((double)sum/(double)n);

}

int main()

{

long n = 0;

cout<

cin>>n;

if (n <= 0)

{

cout<

exit(1);

}

double pi = FindPi(n);

cout.precision(50);

cout<

return 0;

}

蒙特卡洛法求圆周率 c语言,c++蒙特卡洛法求圆周率相关推荐

  1. c语言编程实现表达式求值,c语言实现表达式求值的方法

    c语言实现表达式求值的方法 发布时间:2020-06-22 16:45:46 来源:亿速云 阅读:82 作者:Leah 这期内容当中小编将会给大家带来有关c语言实现表达式求值的方法,以专业的角度为大家 ...

  2. 迭代公式求平方根c语言程序设计,迭代法求平方根C语言实验报告

    与<迭代法求平方根C语言实验报告>相关的范文 西安交通大学实验报告 课程_ c++ __ 实验名称_迭代公式求平方根_ 第1页 共2页 系 别__ 土木工程 ____ 实 验 日 期 20 ...

  3. 蒙特卡洛求圆周率c语言代码,蒙特卡洛法求圆周率

    利用蒙特卡洛算法求圆周率是一个概率的方法,关于这方面的内容很多,而且也很容易理解,更多具体分析过程可以参考如下文章: http://blog.csdn.net/zzhflyqh/article/det ...

  4. python 拟牛顿法 求非线性方程_C语言实现迭代法求非线性方程的根

    迭代法求非线性方程的根 迭代法是一种逐次逼近法.它是求解代数方程,超越方程及方程组的一种基本方法,但存在收敛性及收敛快慢的问题. 为了用迭代法求非线性方程f(x) = 0的近似根: 1.首先需要将此方 ...

  5. 一元函数求导C语言,自定义函数求一元二次方程(C语言版)

    注意点: 输出的格式,多少位后小数. scanf后要记得加& <0的情况要记得分类 题目描述 求方程 的根,用三个函数分别求当b^2-4ac大于0.等于0.和小于0时的根,并输出结果.从 ...

  6. c语言用fun求矩阵,C语言通过函数调用求n*n阶矩阵周边元素绝对值之和

    用c语言的话可用求和函数,具体函数如下: #include "stdio.h" #include "math.h" #define N 5 int sum(in ...

  7. 巴比伦算法求平方根c语言,巴比伦算法求平方根

    算法描述: 这种方法比较就远了,也可以从牛顿迭代法推导. 假设x^2=n ,给出n 要求x 的值. 1 从一个任意的值x开始(越靠近根越好). 2 初始化y = 1. 3. 重复一下步骤直到求得近似值 ...

  8. 筛法求素数c 语言,位筛法求素数,有段代码看不懂,有大佬可以来说一下

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 就是BITArray[ (i -3)/ CHAR_BIT ]其中i从0开始,那下标不就为负了?而指向的又是哪个数据?下面是完整代码. #include # ...

  9. python怎么用圆周率_用python程序求圆周率到任意位

    因为根据马青公式π/4=4arctg1/5-arctg1/239 又因为arctgX=X-(1/3)X^3+(1/5)X^5-(1/7)X^7+......+[(-1)^(n-1)/((2n-1)]* ...

最新文章

  1. 报告 | 从20世纪70年代至今,自动驾驶汽车的发展经历了哪些历史性的变革?
  2. 1.MySQL基本体系
  3. C语言左移位符号 << 结合 |= 实现置位操作
  4. VS 常用的一些技巧和问题集锦【不断的更新中】
  5. Java中的简单REST客户端
  6. UVA 11825 状态压缩DP+子集思想
  7. XML编程-DOM4J
  8. 网络层地址解析协议ARP
  9. python—scipy.stats.multivariate_normal
  10. 安卓开发 登录用户信息缓存_Firefox 将向用户警告被泄露的登录信息
  11. 【C++】内存4区---代码区、全局区、栈区、堆区
  12. idea mvn命令
  13. Java项目:企业固定资产管理系统(java+SpringBoot+VUE+maven+mysql)
  14. 2021 年的简单年终总结
  15. 推荐系统学习之评测指标
  16. 是面试官放水,还是实在公司太缺人?这都没挂,阿里巴巴原来这么容易进...
  17. mysql索引执行顺序_mysql索引及sql执行顺序
  18. 电子邮箱系统注册哪家好?163邮箱联系人怎么管理?
  19. nestjs[typeorm学习之一对一表关系探究与使用]
  20. java 虚拟机JVM

热门文章

  1. js 添加事件 attachEvent 和 addEventListener 的区别
  2. mysql复制: 一个master对应1个slave
  3. repair filesystem 一般是什么引起的和该怎样解决
  4. 关于三极管偏置电路的思考
  5. Linux常用备份恢复工具
  6. bitcount java_java-Long.bitCount()如何找到设置的位数?
  7. js根据name获取value_js 函数的重载
  8. php 生成excel空白,phpexcel库在localhost上运行良好,但在服务器中生成空白的excel文件...
  9. matlab双目相机标定校正_基于双目视觉的无人机避障算法(一)
  10. alert闪一下就没了_尾部贯穿式镀铬银饰条除了丑,还能闪瞎眼