python莱布尼茨法计算π_酷叮猫少儿编程讲堂——Python 用莱布尼茨等式求π
原標題:酷叮貓少兒編程講堂——Python 用萊布尼茨等式求π
Python 用萊布尼茨等式求π
2018-08-01
德國大數學家萊布尼茨Leibniz在研究圓周率π的過程中發現一個數學公式是這樣的:
π/4 = 1 - 1/3 + 1/5 - 1/7 + ...
我們可以通過這個數學公式求得π的值,用程序檢驗一下它的計算準確度如何? 暫定參與計算的最后一項數值要小于10的-6次方
【分析】
我們觀察一下這個公式,發現分母都是奇數,第一項是1,可理解成1/1, 而且偶數項都是負數,奇數項都是正的,通過這個觀察我們就可以使用Python語言求出π的值。再對照高精度的π值,我們就可以知道它的精確度了。
【運行結果】
【代碼】
from math import pifm = (i for i in range(1,int(1e6+2)) if i%2) # 找到所有可以參與計算的奇數分母pidiv4 = 0for id, a in enumerate(fm,start=1): # 萊布尼茨公式求 π/4 pidiv4 += (1/a) if id%2 else (-1/a)myPi = pidiv4*4 # 求出 πprint(pi, myPi)print(" ")# 以下代碼確定計算結果的精度count=Falseprec=0for a,b in zip(str(myPi), str(pi)): if a==b=='.': count = True if count: if a==b: prec+=1 else: breakprint("π 的計算精度精確到小數點后 {} 位".format(prec-1))
能近似求解圓周率的數學公式還很多,大家可以到網上再找一些,看看它們的計算精度如何.返回搜狐,查看更多
責任編輯:
總結
以上是生活随笔為你收集整理的python莱布尼茨法计算π_酷叮猫少儿编程讲堂——Python 用莱布尼茨等式求π的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vsphere ha 虚拟机监控错误_学
- 下一篇: 翻牌游戏如何打乱牌面java_剑仙登上虎