一:数学原理


如图所示,存在一边长为r的正方形,其内存在一半径为r内切圆。则正方形面积为S1,圆的面积为S2

设事件A为投掷一点至正方形内,恰落入圆内,则

P(A) = (S1 / S2) = (π×r×r/ 4×π×r×r) = (4 / π)

若投掷点总数为n,恰落入圆内的点数为k,则

P(A) = k / n

可得π为

4×k / n

k的值由计算机模拟,模拟的判定条件为:若随机生成的圆的面积小于1,则k被缓存。

二:编程实现

1. java实现
2. swift实现

使用概率法计算圆周率相关推荐

  1. python计算圆周率_python模拟蒙特·卡罗法计算圆周率

    蒙特·卡罗方法是一种通过概率来得到问题近似解的方法,在很多领域都有重要的应用,其中就包括圆周率近似值的计问题. 假设有一块边长为2的正方形木板,上面画一个单位圆,然后随意往木板上扔飞镖,落点坐标(x, ...

  2. 【无标题】python利用公式法计算圆周率

    # 计算圆周率(公式法) i = 1 j = 1 s = 0 print('******圆周率公式法******') for i in range(1, 100):print(f'循环{i}次,第一次 ...

  3. python——计算圆周率近似值

    计算圆周率近似值 方法: 1.拉马努金法计算圆周率近似值: "数学家拉马努金(Srinivasa Ramanujan)找到了一个无限序列,可以用来生成π的数值近似值: 编写一个函数 ,使用这 ...

  4. python计算圆周率近似值_Python——计算PI的近似值,python,圆周率

    计算圆周率近似值 方法: 1.拉马努金法计算圆周率近似值: "数学家拉马努金(Srinivasa Ramanujan)找到了一个无限序列,可以用来生成π的数值近似值: 编写一个函数 ,使用这 ...

  5. 多线程之基于积分法与欧拉恒等式法的圆周率计算及OMP优化

    文章目录 一.问题描述 二.积分法 算法推导 编程实现 OMP优化 三.欧拉恒等式 算法推导 编程实现 前期准备 加法 减法 乘法 除法 算法实现 OMP优化 四.总结 积分法与欧拉恒等式法的对比 O ...

  6. python莱布尼茨法计算π_python圆周率计算(带进度条)

    3.波尔文四次迭代式 这个公式由乔纳森·波尔文和彼得·波尔文于1985年发表的. bailey-borwein-plouffe算法 这个公式简称BBP公式,由David Bailey, Peter B ...

  7. python计算圆周率(蒙特卡洛法/模拟法、统计法/穷举法、BBP公式)

    def calculatePI1(): #模拟统计法:蒙特卡罗方法计算圆周率import random as r #导入random模块命名为rimport math as m #导入math模块命名 ...

  8. 电力系统随机潮流概率潮流计算MATLAB程序包含蒙特卡洛模拟法、半不变量法+级数展开

    电力系统随机潮流概率潮流计算MATLAB程序包含蒙特卡洛模拟法.半不变量法+级数展开(Gram-Charlie,Cornish-Fisher): 考虑光伏不确定性(Beta分布),以IEEE34节点为 ...

  9. bbp公式求圆周率、python_【并行计算】六种方法计算圆周率

    计算π的历史 圆周率π可能是科学界内外最广为人知的自然常数了.早在公元5世纪时,南朝宋数学家祖冲之用割圆法将圆周率计算到小数点后7位数字.大约同一时间,印度的数学家也将圆周率计算到了小数点后5位.历史 ...

最新文章

  1. 软件设计之 数据库设计
  2. 日志服务Flink Connector《支持Exactly Once》
  3. 从“元宇宙”热炒中理性看待我国虚拟现实产业发展
  4. F5发布最新文件虚拟化存储产品ARX 4000
  5. jquery很好的学习网站
  6. MS SQL “ 无法启动分布式事务“问题的解决思路
  7. boost::geometry::index::detail::segment_intersection用法的测试程序
  8. java 铁三车强度如何_工欲善其事,必先利其器--GIANT TRINITY铁三车
  9. 【转】增量式PID控制算法
  10. [转]Hspice 语法手册
  11. 锁定计算机好在下游戏吗,巧用win7锁定计算机防止孩子沉迷游戏
  12. Java 字符串使用之性能优化实践
  13. matlab 加根号
  14. kiv8测量方法_measure_测量 | measure_Scikit image_参考手册_非常教程
  15. shell小数点前不打0_shell十三问:关于${0##*/} 和${0%/*}
  16. 壁纸|锁屏和桌面套图壁纸,一套的,给手机来个套餐
  17. TP-LINK路由器配置
  18. Latex texstudio法国人名字上面的一撇,声调输入
  19. mysql 1025_ERROR 1025 (HY000): Error on rename of to
  20. 应急响应-敏感信息泄露怎么解决?

热门文章

  1. N个数全排列的第M个排列是?(全排列)
  2. 边云协同的优点_边云协同
  3. 微光集市-JWT和Token在本项目中的应用(版本5.0)
  4. 程序包不存在 错误解决方法
  5. 苹果宣布 2022 年 Apple 设计大奖得主
  6. 页面最上方的搜索和logo叫什么_网页顶部导航栏设计总结
  7. 【狂飙后遗症】你磕的CP是那一对,他们的后代长什么样?
  8. 按键扫描——74HC164驱动(一)
  9. android10 三星升级计划,三星公布Android 10.0国行升级计划:规模庞大
  10. 浏览器主页被搜狗劫持如何处理