これはバーゼル問題と呼ばれる有名な問題で、オイラーによって解かれました。 個人的には三角波のフーリエ展開を用いて計算する手法が一番わかり易い気がします。 バーゼル問題の計算 この無限和を有限で打ち切って計算して円周率を計算してみることにします。 どれくらいの速度で収束するのでしょうか? 足していく値が$\mathcal{O}(n^{-2})$であるので、直感的には$\mathcal{O}(n^{-1})$ぐらいで真の値に収束する気がします。(少し手を動かすと証明も出来ます。) つまり$n$まで計算すれば$\frac{1}{n}$ぐらいの精度で計算できるわけです。 では実際にコレを用いて単精度浮動少数で円周率を計算してみましょう Haskellでちょろっと書いてみると