cleansky 发表于 2011-2-17 20:56:35

PROGRAM:CALPI
:0->M
:0->N
:0->X
:0->Y

:FOR(K,1,10)
:rand->X
:rand->Y
:If (X^2+Y^2)<=1
:THEN
:(M+1)->M
:(N+1)->N
:END
:If (X^2+Y^2)>1
:THEN
:(M+1)->M
:END
:END
:4*N/M->P
-----------------------------------------------------------------------------
以上程序在TI-76.fr上运行,迭代10次的结果(p)值为3.2,各位可以在自己的机器上试一下。

ps:

原理我想大家都会很清楚,半径为1的圆的面积为PI,而其外切正方形的面积为4,因此在{(x,y):0<=x<=2,0<=y<=2}区域内随机投点的概率落在园内的极限趋于PI/4.

希望看到大家的计算结果,不过有些机器可能会比较长时间。

imath 发表于 2011-2-17 21:04:24

概率算法啊。。精度太低了

cleansky 发表于 2011-2-17 21:08:13

呵呵,这相当于投点实验,把FOR循环中的10换成100,000,000试试。

imath 发表于 2011-2-17 21:12:00

我倒。。。
让Core i7 II算吧

cleansky 发表于 2011-2-17 21:22:26

看看哪位的精度高,时间短吧

diameter 发表于 2011-2-17 21:31:03

PROGRAM:CALPI
:0->M
:0->N
:0->X
:0->Y

:FOR(K,1,10)
:rand->X
:rand->Y
:If (X^2+Y^2)M
:(N+1)->N
:END
:If (X^2+Y^2)>1
:THEN
:(M+1)->M
:END
:END
:4*N/M->P
------------------------------ ...
cleansky 发表于 2011-2-17 20:56 http://www.cncalc.org/images/common/back.gif
我用50F写过一个……算的很慢,还不如用级数求和

cleansky 发表于 2011-2-17 21:34:31

不知道CAS和9860II怎么样哈

imath 发表于 2011-2-18 19:59:13

级数求和没用的,内部精度决定了最多显示多少小数
页: 1 [2]
查看完整版本: 谁能发个计算pi的程序? for 9750GII/9860GII的