
正文
python中求pi函数 python教程pi的计算过程
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
python如何计算π
#coding=utf-8
'''
Created on 2014-11-04
@author: Neo
'''
import sys
import math
from decimal import *
def bbp(n):
pi=Decimal(0)
k=0
while k n:
pi+=(Decimal(1)/(16**k))*((Decimal(4)/(8*k+1))-(Decimal(2)/(8*k+4))-(Decimal(1)/(8*k+5))-(Decimal(1)/(8*k+6)))
k+=1
return pi
def main(argv):
if len(argv) !=2:
exit('Usage: BaileyBorweinPlouffe.py prec n')
getcontext().prec=(int(sys.argv[1]))
my_pi=bbp(int(sys.argv[2]))
accuracy=100*(Decimal(math.pi)-my_pi)/my_pi
print "Pi is approximately "+str(my_pi)
print "Accuracy with math.pi: "+str(accuracy)
if __name__=="__main__":
main(sys.argv[1:])
result:
d:\workspace\PyDemopython test.py 10 10
Pi is approximately 3.141592653
Accuracy with math.pi: 1.877369797E-8
d:\workspace\PyDemopython test.py 25 25
Pi is approximately 3.141592653589793238462644
Accuracy with math.pi: -3.898171852150198570978563E-15
d:\workspace\PyDemopython test.py 40 40
Pi is approximately 3.141592653589793238462643383279502884195
Accuracy with math.pi: -3.898171832519375446564294863483061824361E-15
d:\workspace\PyDemo
相关问答
Q1: 两种用python求pi的方法,必须按照如图两种计算方式,求大神帮我分别写一下两种方法的代码!
def pisum(n):
pi=3
sign=1
for i in range(1,n+1):
pi+=sign*4.0/((i+1)*(i+2)*(i+3))
sign=-sign
return pi
def piprod(n):
start=2**0.5
pi=1
for i in range(0,n+1):
for j in range(0,i):
start=(start+2)**0.5
pi*=start
pi=2**(n+2)/pi
return pi
Q2: python如何表示 圆周率
python表示圆周率的方法:
使用“import”语句导入math包。“math.pi”函数可以获取到圆周率,那么就可以用“math.pi”函数来表示圆周率
示例如下:
执行结果如下:
更多Python知识,请关注:Python自学网!!
python中求pi函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于python教程pi的计算过程、python中求pi函数的信息别忘了在本站进行查找喔。






