python使用莱布尼兹循环将常数 PI (π) 计算到小数点后 20 位。
时间: 2024-09-29 12:15:17 浏览: 53
Calculate-pi:几种计算π(pi)的算法
Python中使用莱布尼茨公式计算圆周率(π)的小数部分通常不是最优的方法,因为该公式虽然简洁,但收敛速度非常慢。不过,为了演示,我们可以编写一个简单的函数,通过循环迭代计算π的前20位。莱布尼茨公式的一个常见版本是:
\[
\frac{\pi}{4} = 1 - \frac{1}{3} + \frac{1}{5} - \frac{1}{7} + \frac{1}{9} - \cdots
\]
下面是利用这个公式计算π的Python代码示例:
```python
def leibniz_pi(digits):
pi = 0
numerator = 1
denominator = 1
sign = 1
for _ in range(digits):
pi += sign * (numerator / denominator)
numerator += 2
denominator += 2
sign *= -1 # 变换正负
return round(pi * 4, digits)
# 计算并打印π的前20位
pi_20_digits = leibniz_pi(20)
print(f"Pi calculated to 20 decimal places: {pi_20_digits}")
阅读全文