利用蒙特卡洛方法近似求解π的值

国际上公认的计算π的值得最好的方法,就是在一向一个边长为1的正方形区域里面随机的扔一些石子,用落在扇形里面的个数和总的个数的一个比例关系,就可以近似求解出π的值

利用蒙特卡洛方法近似求解π的值_第1张图片

就类似这样,我们可以知道这个比值 = (π/4),故π = 4*rate(比值)
一下是我用Python实现的代码

from random import random
from math import sqrt
from time import clock
MAX = 2**20
Count = 0
clock()
for i in range(1,MAX):
    x,y = random(),random()
    dis = sqrt(x**2+y**2)
    if dis <= 1:
        Count = Count+1
pi = 4*(float(Count)/MAX)
print "pi的值为:%lf" % (pi)
print "程序运行时间为:%-5ss" % clock()

五次的实验结果如下:
利用蒙特卡洛方法近似求解π的值_第2张图片

你可能感兴趣的:(概率)