python基礎知識進階(四) Python語言的math庫和random庫和實例


 元組和列表 寫的 過程中沒保存,下次補上吧。好尷尬,手好殘。

 

 

 

 

 

 

 

 

 

計算機是一個確定性設備,不能產生真正的隨機數。(使用seed函數,兩次的值都是一樣的)

  由計算機產生的隨機數,都是一個由種子產生的偽隨機數列。相同的隨機種子會產生相同的偽隨機數列。

 

 

 

 

π的計算

  圓周率π是一個無理數,沒有任何一個精確公式能夠計算π值,π的計算只能采用近似算法。

  國際公認的π值計算采用蒙特卡洛方法。

 

簡單說,蒙特卡洛是利用隨機試驗求解問題的方法。

  

 

 

 

 

π計算問題的ipo表示如下:

  輸入:拋點的數量

  處理:對於每個拋灑點,計算點到圓心的距離,通過距離判斷該點在圓內或者圓外。統計在圓內點的數量。

  輸出:π值

 

 

 

 

 

# pi.py
from random import random
from math import sqrt
from time import clock
DARTS = 1200
hits = 0
clock()
for i in range(1,DARTS):
    x, y = random(), random()
    dist = sqrt(x**2 + y**2)
    if dist <= 1.0:
        hits = hits + 1
pi = 4 * (hits/DARTS)
print("Pi的值是 %s" % pi)
print("程序運行時間是 %-5.5ss" % clock())

 

 可進一步挖掘該方法的強大能力。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM