当前位置:   article > 正文

用python求圆周率

python计算圆周率。(可以用多种方法去实现)

1 问题

如何用python代码求圆周率

2 方法

让所用公式等式右边分子都为1,分母为递增数列,从第一项开始,奇数项符号为正,偶数项符号为负。等式右边的分母越大,越小,圆周率π计算的值越精确

代码清单 1

from math import fabs          
from time import perf_counter  
def Bar(i):        
   N = pow(10,level)
   a = int((i/N)*50)
  b = 50 - a
Y , N = '*' * a , '.' * b
print("\r计算中:{:3.0f}% [{}->{}] {:.2f}s"
         .format(2*a,Y,N,perf_counter()),end='')
level = eval(input('计算Pi精确到小数点后几位数:'))
print('\n{:=^70}'.format('计算开始'))
a,b,pi,tmp = 1,1,0,1
i = 0
'''
a 分子  |  b 分母  |  pi 圆周率
tmp 存储a/b的值    |  i  执行进度
'''
perf_counter()      
while (fabs(tmp) >= pow(10,-level)):
   pi += tmp
   b += 2
   a = -a
   tmp = a/b
   i += 2
   Bar(i)        
print('\n{:=^70}'.format('计算完成'))
print('\nPi的计算值为:{}'.format(round(pi*4,level))

3 结语

针对如何利用python求圆周率的问题,我们利用函数通过实验,证明该方法有效,但有些地方任然有误差和错误,在未来应继续学习和改善,

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/424048
推荐阅读
相关标签
  

闽ICP备14008679号