円周率

| コメント(0) | トラックバック(0)

電卓で円周率を計算してみる。
これでは精度が悪いし、憶えたほうが早いような気も...。

arctan(t) = (1/t) Σ {(2k)!!/(2k+1)!!・(t^2/(1+t^2))^k} (k は 1 から無限にわたる) [Leonhard Euler: 1755]

つまり、


a_{0} = t^2 / (1+t^2) / t

a_{n} = a{n-1} * 2n / (2n+1) * t^2 / (1+t^2)

と置くと

arctan(t) = Σa_{k} (k は 0 から無限にわたる)

tan(π/6) = 1/sqrt(3) つまり π = 6 arctan(1/sqrt(3)) なので、t = 1/sqrt(3) とすると t^2 / (1+t^2) = 1 / 4。
A_{n} = 6 a_{n} とすると、

A_{0} = 3 / 2 ・sqrt(3)
A_{n} = A{n-1} * 2n / (2n+1) / 4
π = ΣA_{k} (k は 0 から無限にわたる)

したがって、πはつぎのようにして計算できる:

[√3][*][3][/][2][MS] ( [*][2n][/][2n+1][/][4]?[M+] )+ [MR]
(...)+ は繰り返し (n は 1 から始まる)。? の時点で置数が十分小さくなったらやめる。

[√3]: 3の平方根を置く。 電卓: 平方根 参照。
[MS]: 置数をメモリに保存する。[M+] しかない場合は、[√3] のあとでメモリをクリアしておくこと。
[2n]、[2n+1]: n番目の正の偶数と、その次の奇数。
[MR]: メモリを置数に呼び出す。

丸め誤差が蓄積するので、精度はよくない。結果の最後のほうの桁は捨てる。

トラックバック(0)

トラックバックURL: http://hatuka.nezumi.nu/cgi-bin/mt/mt-tb.cgi/18

コメントする

このブログ記事について

このページは、Hatuka*nezumiが2005年12月21日 07:15に書いたブログ記事です。

ひとつ前のブログ記事は「平方根」です。

次のブログ記事は「check_sender_ns_access」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。