【Python】圆周率的计算问题?
圆周率大家都知道
无理数...
那么如何计算圆周率呢
其实这是一个数学难题
科学家们给出了圆周率的近似计算公式
这是一个无限求和公式
除了这样的公式
还有没有别的方法可以计算圆周率呢
在工程上还有一种方法
蒙特卡罗方法
是这样说的,圆周率本身是一个圆形
圆的面积除以圆的直径为边长的正方形面积的商
与圆周率是有关系的
那么在一个面积中
我们如何计算圆的面积方形的面积呢
方形面积比较容易
那圆面积呢?
对于一个区域面积
我们向它撒点
点是随机出现在区域任何一个可能的位置上
如果我们给出的点的数目,非常庞大
而且每一个点尽可能的随机
那么圆的面积内部的点就构成了圆的面积
而在整个正方形中的所有撒点就构成了正方形的面积
那么点的数量的比值
就能够计算出圆的面积
这是一种非常工程的方法
那么这种方法呢
不仅应用在圆周率的计算中
也应用在许多工程型的应用中
不再扩展
看程序是如何计算圆周率的
先看公式法
公式是一个累加求和的过程
其中累加的变量K从0开始到无穷大
后面就很简单了
那我们如何实现无穷个数的累加呢
我们很难做到
但是对于计算机来讲
我们可以模拟一个很大的数
既然是累加
我们就可以使用for循环来实现这种累加
不要手残把N=1000000,得等好长时间
看见’\’了吗,换行,换行,换行
再来看看蒙特卡罗方法
完!