我正在尝试不使用任何模块来计算pi的前1000位数字。直到我看到的所有计算Pi的公式都使用了只能由数学模块访问的函数,例如计算无穷级数或使用积分。 有人对如何做有想法吗?
答案 0 :(得分:0)
您可以尝试使用Leibniz formula:
>>> def leibniz(n):
pi = 1
for i in range(1, n):
pi += ((-1) ** i) * (1 / (2 * i + 1))
return pi * 4
>>> leibniz(5)
3.3396825396825403
>>> leibniz(10000)
3.1414926535900345
>>> leibniz(100000)
3.1415826535897198
>>> leibniz(10000000)
3.1415925535897915