1. 程式人生 > >C語言求高精度PI

C語言求高精度PI

如下程式碼能求解出高精度的PI值

#include <stdlib.h> 
#include <stdio.h> 

long a=10000,b,c=2800,d,e,f[2801],g; 

int main() 
{ 
	for(;b-c;) 
		f[b++]=a/5; 
	for(;d=0,g=c*2;c-=14,printf("%.4ld",e+d/a),e=d%a) //原始碼為%.4d,GCC給出警告.已改為%.4ld
		for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b); 
	getchar();
	return 0;
} 
執行結果如下:
31415926535897932384626433832795028841971693993751058209749445923
07816406286208998628034825342117067982148086513282306647093844609
55058223172535940812848111745028410270193852110555964462294895493
03819644288109756659334461284756482337867831652712019091456485669
23460348610454326648213393607260249141273724587006606315588174881
52092096282925409171536436789259036001133053054882046652138414695
19415116094330572703657595919530921861173819326117931051185480744
62379962749567351885752724891227938183011949129833673362440656643
08602139494639522473719070217986094370277053921717629317675238467
48184676694051320005681271452635608277857713427577896091736371787
21468440901224953430146549585371050792279689258923542019956112129
02196086403441815981362977477130996051870721134999999837297804995
10597317328160963185

以上程式碼摘自百度C語言吧