问题描述
历史上有许多计算圆周率pai的公式,其中,格雷戈里和莱布尼茨发现了下面的公式:
pai = 4*(1-1/3+1/5-1/7 …)
参见【图1.png】
这个公式简单而优美,但美中不足,它收敛的太慢了。 如果我们四舍五入保留它的两位小数,那么:
累积1项是:4.00 累积2项是:2.67 累积3项是:3.47 。。。
请你写出它累积100项是多少(四舍五入到小数后两位)。
注意:只填写该小数本身,不要填写任何多余的说明或解释文字。

思路分析及代码实现
思路:
观察公式可得偶数项为-,奇数为+,因此我们可以判断前一百项的奇偶性来进行加减,然后套用公式,最后将结果用round函数进行四舍五入保留两位小数即可
result = 0
start = 1
for i in range(1, 101):
if i % 2 == 0:
result = result - 4/start
start += 2
else:
result = result + 4/start
start += 2
print(round(result, 2))
格雷戈里-莱布尼茨圆周率公式:100项精度计算
本文探讨历史上的格雷戈里-莱布尼茨圆周率计算公式,通过代码实现逐项求和,精确到小数后两位,得出累积100项的结果。
508

被折叠的 条评论
为什么被折叠?



