Python计算圆周率,精确到n位
本文将使用Python计算圆周率,可精确到n位,n值越大精度越高。
示例代码:
n = int(input('请键入想要计算到小数点后的位数n:')) #先键入字符串,再转化为整数
w = n+10 #多计算10位,防止尾数取舍的影响
b=10**w
x1 = b*4//5 #求含4/5的首项
x2 = b// -239 #求含1/239的首项
he = x1+x2 #求第一大项
n *= 2 #设置下面循环的终点,即共计算n项
for i in range(3,n,2):
#循环初值=3,末值2n,步长=2
x1 //= -25 #求每个含1/5的项及符号
x2 //= -57121
#求每个含1/239的项及符号
x = (x1+x2) // i
#求两项之和
he += x
#求总和
pi = he*4
#求出π pi //= 10**10
#舍掉后十位
print(pi)