Ayala 发表于 2017-4-18 18:03:16

经典算法求PI

蒲丰投针,其实这算法本质是个求定积分的算法

#include <windows.h>
#define N 10000
#define C 20
#define R 19

__int64 a=1000000, b=0, c=N*R, d, e, f, g;   
main()   
{   
for (;b-c;) f=C*N;
for(;d=0,g=c*2;c-=R,printf("%.6d",e+d/a),e=d%a)   
for(b=c;d+=f*a,f=d%--g,d/=g--,--b;d*=b);   
system("pause");
return 0;   
}   

0xAA55 发表于 2017-4-18 19:29:01

无力吐槽abcdefg,不过代码还真简短

千鹤诗音 发表于 2017-4-23 01:11:50

我今天在http://outofmemory.cn/code-snippet/33433/C-language-classic-algorithm-PI-tell 上也看到一个求pi的算法了呢。不过好长,囧。

乘简 发表于 2017-5-4 12:45:50

N久前看到过,3行代码计算PI的东西,你这个有点长了。。。

Ayala 发表于 2017-5-4 19:23:04

乘简 发表于 2017-5-4 12:45
N久前看到过,3行代码计算PI的东西,你这个有点长了。。。

当然有点长 因为对原代码进行了词义解释 方便计算精度的扩展

0xAA55 发表于 2017-5-5 07:12:59

乘简 发表于 2017-5-4 12:45
N久前看到过,3行代码计算PI的东西,你这个有点长了。。。

代码长度不能决定其优秀程度

乘简 发表于 2017-5-26 16:58:34

本帖最后由 乘简 于 2017-5-26 17:03 编辑

原来代码是一样的。。。

乘简 发表于 2017-5-26 17:00:32

本帖最后由 乘简 于 2017-5-26 17:03 编辑

0xAA55 发表于 2017-5-5 07:12
代码长度不能决定其优秀程度

不好意思,发错了。。。

乘简 发表于 2017-5-26 17:02:15

0xAA55 发表于 2017-5-5 07:12
代码长度不能决定其优秀程度

不好意思,是我看错了。。。

(⊙o⊙) 发表于 2017-11-7 23:25:45

这就是精髓的

watermelon 发表于 2018-9-7 08:18:21

蒙特卡洛方法与数值模拟第一课就是讲的蒲丰式投针实验,:D

yzw92 发表于 2019-3-7 06:39:53

发帖辛苦,谢谢分享
页: [1]
查看完整版本: 经典算法求PI