用python计算圆周率PI

代码如下:

 1 import math
 2 import time
 3 scale=10
 4 print("执行开始")
 5 t=time.process_time()
 6 for i in range(scale+1):
 7     a,b='**'*i,'..'*(scale-i)
 8     c=(i/scale)*100
 9     π=4*(4*math.atan(1/5)-math.atan(1/239))
10     print("%{:3}[{}->{}]".format(a,b,c))
11     time.sleep(0.1)
12 print(π)
13 print("{:.2f}s".format(t))
14 print("执行结束")

运行结果如下图片:

算法说明:

一个正方形内部相切一个圆,圆和正方形的面积之比是π/4。  

在这个正方形内部,随机产生n个点(这些点服从均匀分布),计算它们与中心点的距离是否大于圆的半径,以此判断是否落在圆的内部。

统计圆内的点数,与n的比值乘以4,就是π的值。理论上,n越大,计算的π值越准。

 

posted @ 2020-10-11 00:04  山自山  阅读(310)  评论(0编辑  收藏  举报