ワイ、円周率を割り切った模様 → 円周率=7825万6779 分の 2億4585万922

こんにちは。 3.14から始まる円周率はどこまでも続く男のロマン・・・そんな風に考えていた時期が、ワイにもありました。 「円周率が10桁で割り切れた」とかいう嘘記事が虚構新聞から出回ったりしたこともありました。 しかしさっきプログラムを作っていろいろ計算していたところ、円周率が割り切れてしまったので報告させてください。 そもそもは、円周率を分数で表現する手法を最近知り興味を持ったのがきっかけです。例えば

Screen Shot 2015-12-09 at 1.56.39 PM

とかです。7分の22が円周率のそこそこの近似値(3桁まで正しい)になっています。 次に有名なのが、

Screen Shot 2015-12-09 at 1.56.07 PM

らしいです。この113分の355はなんと7桁まで正しい近似になってます。3桁の整数2つ覚えるだけで、円周率7桁分の精度が得られるとは何ともお得な数です。 ここで疑問が湧きました。 この調子で分母の整数値を上げていったらどうなるのだろうか・・・? 本来数学でのやりかただと、ここで「連分数」などを持ち出すようなのですが、幸い?自分はそのあたりは忘れてしまったソフト屋なので、力技で結論だけだす以下のようなプログラムを作りました。言語は JavaScript で、実行には Node.js を使いました。

<pi.js>

#!/usr/local/bin/node
var minErr = 4;
for (var i = 1; i < 100000000; i++) {
var j = Math.floor(Math.PI * i);
var err = Math.abs(Math.PI - (j/i));
var err1 = Math.abs(Math.PI - ((j+1)/i));
if (err > err1) {
err = err1;
j = j+1;
}
if (minErr > err) {
minErr = err;
console.log("" + j + "/" + i + " = " + (j / i) + ", ERR=" + err);
if (err == 0) break;
}
}
console.log("DONE with i=" + i);
view raw pi.js hosted with ❤ by GitHub

分母を1から1ずつ上げていき、分子は既知の円周率 Math.PI から逆算してます(ちょっとずるいですが・・)。   実行結果は以下の通りです。

なんと、分母が7825万6779になったところで誤差が0になって割り切れてしまいました。やばい。 つまり

Screen Shot 2015-12-09 at 2.06.53 PM

であることが確かめられてしまいました。 少なくとも JavaScript さんは 円周率 = 7825万6779 分の 2億4585万922 だと判定しました。 どこか計算間違っているんでしょうかね・・・?

だれか詳しい人教えてください。

6 comments

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です