首页 > 解决方案 > 在 python 中计算 pi

问题描述

我正在尝试使用 Python 将 pi 确定为 n 小数,但我不知道为什么它不起作用。我最初尝试使用 Machin 的 pi = 16 atan(1/5)-4 atan(1/239) 公式和泰勒展开式。

def atan(x, n):
k = 0
u = x # 1st value of u for k=0
t = u # 1st value of s for k=0
s = t # summ for k=0
while k<n:
    k += 1
    u *= -(x*x)
    t = u/(2*k+1)
    s += t
return s

然后我只要求 pi 但它仅限于少量小数 pi_calc = 16 arctang(1/5,10000000) - 4 arctang(1/239,10000000)

3.141592653589794

我找到了另一种使用 spigot 算法的方法,但我认为我的方法可以工作得更多......我怀疑这是因为我们受到 python 中数字精度的限制,但我不确定。

想法?谢谢

标签: pythonpitaylor-series

解决方案


推荐阅读