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()

五次的實驗結果如下:
這裡寫圖片描述