圆周率的计算方法!(能精确到800多位)
#include "stdio.h"long a=10000,b=0,c=2800,d,e=0,f[2801],g;
void main()
{for(;b-c;)f[b++]=a/5;
for(;d=0,g=c*2;)
{
for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);
c-=14;
if(e+d/a==3141)
{printf("Pai=%.3f",(e+d/a)*1.0/1000);e=d%a;continue;}
if(e+d/a<10)
printf("000%d",e+d/a);
else if(e+d/a<100)
printf("00%d",e+d/a);
else if(e+d/a<1000)
printf("0%d",e+d/a);
else printf("%d",e+d/a);
e=d%a;
}
printf("\n");
getch();
}