円周率を求める(自称:面積法<正しい名前を知らない>)

未分類

円の面積に近似する多角形の面積を求めることで、円周率を求める方法です。
ネタは、日本の高校生が考え付いたアイデアをコードで表現してみました。

イメージとしては、円に内接する多角形を構成する一つの三角形に着目して、
三角形の中心角が限りなくゼロに近づくにしたがって、面積を求め、
円の中にいくつ三角形が敷き詰められるかを計算し、その数だけ、積分したものです。

for (var i = 60.0; i > 0.0; i -= 0.001)
{
var rad = (i * (2 * Math.PI)) / 360;

rad /= 2;

var a = (Math.Sin(rad) * Math.Cos(rad));

var num = 360 / i;

var m = a * num;

string str = string.Format("{0},{1}", i, m);

Console.WriteLine(str);

}