Try   HackMD

用python計算圓周率

E1060015 林易增

設計概念 :mega:

1.圓面積=pi * r^2
2.若r=1,則圓面積=pi * 1^2=pi
3.在座標軸上,以(0,0)為圓心,x、y軸皆取距離1為半徑畫圓。
4.圓面積為任意扇形面積的4倍,因此,只要計算出其中一個扇形面積,乘以4倍,即可獲得圓面積,也可獲得pi。
5.以第一象限的扇形面積來計算。如下圖。


6.利用random函數隨機在第一象限(1,0)(0,1)的區域任意取點,若是取到的點落入黃色扇形面積內則列入計算,最後統計出落入黃色扇形區域的機率為多少,再乘以4倍,即可算出圓積,也帶出圓周率的數值。
7.任意找的數字越多,則算出來的圓周率就越精準

程式碼如下 :tada:

#計算圓周率pi import random import statistics count=[0,0,0,0,0,0,0,0,0,0] pii=[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0] for j in range(len(count)): total=100000 #找點的次數越多,算出來的pi就越精準 for i in range(total): Xrandresult=random.uniform(0,1) #從x軸隨機找值 Yrandresult=random.uniform(0,1) #從y軸隨機找值 if ((Xrandresult**2+Yrandresult**2)**(1/2)<=1): count[j]=count[j]+1 #若是落入黃色扇形面積內,則加入計數 pii[j]=4*(count[j]/total) #圓面積為扇形面積乘以4 print(pii) #輸出圓周率pi的可能數值 print(statistics.mean(pii)) #統計平均的圓周率pi