みけCATのにっき(仮)
つれづれなるまゝに、日くらし、PCにむかひて、心に移りゆくよしなし事を、そこはかとなく書きつくれば、あやしうこそものぐるほしけれ。
(本当か!?)
出典

πを求める

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

πを求める

投稿記事 by みけCAT » 14年前

適当にπを求めるプログラムを書いてみた。

CODE:

#include 
#include 

int main(int argc,char* argv[]) {
	int i;
	double sum;
	int width;
	if(argc<2)width=100;
	else width=atoi(argv[1]);
	for(i=0,sum=0;i<width;i++)sum+=sqrt((double)width*width-(double)i*i);
	printf("%1.15f\n",sum*4/width/width);
	return 0;
}
円の四分の一の面積を求めて、4倍して半径の2乗で割る。それだけの原理です。
でも単純なだけあって精度がいまいち...
半径をコマンドラインで指定するようになっているのだが、
1000000000に設定しても3.141592655592264と出てくる。
デフォルトの100なんかだと3.160417031779045という値だ。
せめてdouble型の範囲いっぱいまでは行ってほしかったです。
最後に編集したユーザー みけCAT on 2010年12月13日(月) 17:13 [ 編集 2 回目 ]
理由: カテゴリの追加

コメントはまだありません。