円周率2 pi
改訂新版 C言語による標準アルゴリズム事典をSwiftでコーディング
アルゴリズム
円周率2 pi
実行
Playground
コード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | import Foundation func pi2 () - > Double { var a : Double = 1 var b : Double = 1 / sqrt ( 2 ) var s : Double = 1 var t : Double = 4 for _ in 1 .. < 3 { let last = a a = ( a + b ) / 2 b = sqrt ( last * b ) s -= t * ( a - last ) * ( a - last ) t *= 2 } return ( a + b ) * ( a + b ) / s } print ( "相加相乗平均" ) print ( "円周率:\( pi2 () )" ) |