求圓周率π一萬位程式分析 | 圓周率計算程式
先貼一段維基百科的內容:計算機時代計算π上萬位以上的小數位值通常利用高斯-勒讓德演算法[1]或波溫演算法[2];另外以往亦曾使用於1976年[3]發現的薩拉明-布倫特演算法[4]。第一個π和1/π的小數點後首一百萬位利用了古騰堡計劃[5]。最新紀錄是2002年[6]9月[7]得出的1,241,100,000,000個小數位,由擁有1TB主記憶體的64-node日立[8]超級計算機[9],以每秒200億運算速度得出,比舊紀錄多算出一倍(206億小數位)。此紀錄由以下梅欽類公式[10]得出: (K.Takano, 1982年[11]) (F.C.W.Störmer, 1896年[12])這麼多的小數位沒什麼實用價值,只...
先貼一段維基百科的內容:
計算機時代計算π上萬位以上的小數位值通常利用高斯-勒讓德演算法[1]或波溫演算法[2];另外以往亦曾使用於1976年[3]發現的薩拉明-布倫特演算法[4]。
第一個π和1/π的小數點後首一百萬位利用了古騰堡計劃[5]。最新紀錄是2002年[6]9月[7]得出的1,241,100,000,000個小數位,由擁有1TB主記憶體的64-node日立[8]超級計算機[9],以每秒200億運算速度得出,比舊紀錄多算出一倍(206億小數位)。此紀錄由以下梅欽類公式[10]得出:
(K. Takano, 1982年[11]) (F. C. W. Störmer, 1896年[12])這麼多的小數位沒什麼實用價值,只用以測試超級計算機[13]。
1996年[14],David H. Bailey、Peter Borwein及西蒙·普勞夫[15]發現了π的其中一個無窮級數:
以上述公式可以計算π的第n個二進位制[16]或十六進位制[17]小數,而不需先計算首n-1個小數位。此類π演算法稱為貝利-波爾溫-普勞夫公式[18]。請參考Bailey’s website[19] 上相關程式[20]。
法布里斯·貝拉[21]於1997年[22]給出了計算機效率上高出上式47%的BBP演算法:
請參考Fabrice Bellard’s PI page[23] 。
其他計算圓周率的公式包括:
(拉馬努金Ramanujan) (David Chudnovsky及Gregory Chudnovsky)[2]編寫計算機程式時,也可以利用反三角函式[24]直接定義
值,但是編譯器必須具備三角函式的函式庫:利用正弦函式利用餘弦函式[27]
幾何[28]若圓的半徑為r,則其周長為C = 2πr若圓的半徑為r,則其面積為S =πr2若橢圓的長、短兩軸分別為a 和 b ,則其面積為S = πab[29]若球體的半徑為 r,則其體積為 V = (4/3)πr3[30][31]若球體的半徑為r,則其表面積為 S = 4πr2[32]角:180度相等於π弧度[33][34][35]環面的體積和表面積公式
R是管子的中心到畫...