ルート2の手計算
計算フアンの皆さま、こんにちは。
さて、しょうもない会議のときは私は聞いたふりしながらルート2の手計算をしていることが多い。つい最近、画期的な方法を見つけたのでご紹介したい。
普通、この手の計算では逐次近似法が使われるのではないだろうか。小数を打ち切っても、計算ミスをしてもかってに次のステップの計算で修正されていくので手計算には最適である。Wikiにものっているがニュートン法では、漸化式 となる。やってみよう。
という計算が続く。実は収束は非常に良いのだが、お気づきになるように2項目の割り算が筆算では非常に面倒であり、この計算を続けるのはかなり大変である。私もいつもあと数ケタ計算精度を上げるぐらいでもう止めてしまっていた。
なんとか割り算なしにできないか。そう思って次にを分数で近似することをあれこれ考えた。そのうち気付いたのはの連分数展開:
を利用することである(うむむ、cfrac表記が効かない)。途中でばっさり打ち切ればよい。やってみよう。
一見面倒そうであるが、漸化式はであり、と分数で表記しておけば、と非常に簡単である(このときたまたまだが、が既約分数ならもそうである)。
収束はやや遅いが、割り算は最後に一回やるだけである。またこの方法の一般化でを計算することができる。に対して、とするだけである(ただし、今度は連分数展開を基礎にするわけではない。また一般化すると先の既約分数の性質は失われる)。
あなたの計算ライフにぜひお試しください。