Chinaunix首页 | 论坛 | 博客
  • 博客访问: 86664
  • 博文数量: 19
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 226
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-14 13:01
文章分类

全部博文(19)

文章存档

2008年(19)

我的朋友

分类: C/C++

2008-06-26 20:12:39

#include
long a=10000,b,c=2800,d,e,f[2801],g;
main()
{
for(;b-c;)
  f[b++]=a/5;
for(;d=0,g=c*2;c-=14,printf("%.4d",e+d/a),e=d%a)
  for(b=c;d+=f[b]*a,f[b]=d%--g,d/=g--,--b;d*=b);
}
 
计算结果:  
31415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185  
 
 
//化简版
#include
long a=10000;
long b,c,d,e,g;
long f[2801];
main(){
    int i;
    for(i=0;i<2801;i++)
        f[i]=2000;
    for(c=2800;c!=0;c-=14){
        d=0;
        g=c*2-1;
        b=c;
        while(b){
            d+=f[b]*a;
            f[b]=d%g;
            d/=g;
            g-=2;
            if(--b>0)
                d*=b;
        }
        printf("%.4d",e+d/a);
        e=d%a;
    }
}
阅读(1863) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~