今天网上搜索无限不循环小数的时候看到了关于π的计算方法,于是用python写了一个求π的小程序。
原理:π的无穷级数展开:
π=4*(1/1-1/3+1/5-1/7+1/9-1/11+……)=4*∑((-1)^n/(1+2n)),n∈N
下面附上代码:
pi=0.0
fuhao=1;
for i in range(1,1000000000):
if fuhao==1:
pi+=(1/((i*2)-1))
else:
pi-=(1/((i*2)-1))
print(4*pi)
fuhao=fuhao*-1
跑完之后应该能精确到小数点后差不多七八位的位置。不过时间挺长的,如果只是做实验的话,那么可以把那个1000000000写的小一点。