现在的位置: 首页 > 综合 > 正文

用“易语言.飞扬”计算圆周率π小数点后前800位,作者石章能,含源代码

2013年01月25日 ⁄ 综合 ⁄ 共 951字 ⁄ 字号 评论关闭

计算圆周率π小数点后前800位的“易语言.飞扬”程序源代码如下,作者石章能,转换自相应的C代码:

公开 类 启动类
{
    公开 静态 启动()
    {
        
int a=10000,b, c=2800, d, e;
        
int[] f;
        f
=创建 int[2801];

        for(;b-c!=0 ;)
        {
            f[b]
=2000; b++;//控制台.输出(f[b]);
        }
        
for(;c!=0;{c-=14;控制台.输出((e+d/a).到文本().左边(4));e=d%a;})
        {
            
for({b=c;d=f[b]*10000;f[b]=d%(b*2-1);d=d/(b*2-1);b--;};b!=0 ;)
            {
                d
=d*b+f[b]*10000;
                f[b]
=d%(b*2-1);
                d
=d/(b*2-1);
                b
--;
            }
        }

        控制台.输出行(" 请按回车键退出程序");
        控制台.输入文本();
    }
}

 原始C代码如下(艰涩很懂,以简短著称):

/*某年Obfuscated C Contest佳作选录:*/ 
#include 
< stdio.h>
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);

/* (本程式可算出pi值连小数点前共800位) 
(本程式录自sci.math FAQ,原作者未详)
*/

请参考:http://bbs.dywt.com.cn/dispbbs.asp?boardid=148&id=146779&star=1,其中有比较深入细致的解释。

 

【上篇】
【下篇】

抱歉!评论已关闭.