欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于Python實(shí)現(xiàn)蒙特卡洛法計(jì)算圓周率π

 更新時(shí)間:2023年06月19日 11:09:53   作者:python小爬菜  
蒙特卡羅法也稱統(tǒng)計(jì)模擬法、統(tǒng)計(jì)試驗(yàn)法,是把概率現(xiàn)象作為研究對(duì)象的數(shù)值模擬方法,是按抽樣調(diào)查法求取統(tǒng)計(jì)值來推定未知特性量的計(jì)算方法,本文我們將介紹如何使用Python來實(shí)現(xiàn)蒙特卡洛法計(jì)算圓周率π,感興趣的朋友可以參考下

一、前置內(nèi)容

蒙特卡羅法也稱統(tǒng)計(jì)模擬法、統(tǒng)計(jì)試驗(yàn)法。是把概率現(xiàn)象作為研究對(duì)象的數(shù)值模擬方法。是按抽樣調(diào)查法求取統(tǒng)計(jì)值來推定未知特性量的計(jì)算方法。蒙特卡羅是摩納哥的著名賭城,該法為表明其隨機(jī)抽樣的本質(zhì)而命名。故適用于對(duì)離散系統(tǒng)進(jìn)行計(jì)算仿真試驗(yàn)。在計(jì)算仿真中,通過構(gòu)造一個(gè)和系統(tǒng)性能相近似的概率模型,并在數(shù)字計(jì)算機(jī)上進(jìn)行隨機(jī)試驗(yàn),可以模擬系統(tǒng)的隨機(jī)特性。 [1]

1.1、了解random庫(kù)

random庫(kù)是使用隨機(jī)數(shù)的Python標(biāo)準(zhǔn)庫(kù)
偽隨機(jī)數(shù) :采用 梅森旋轉(zhuǎn)算法 (偽)隨機(jī)序列中元素
random庫(kù)主要用于生成隨機(jī)數(shù)
使用random庫(kù): import random

1.2、基本隨機(jī)數(shù)函數(shù)

為什么要隨機(jī)種子呢?
因?yàn)榻o了隨機(jī)數(shù)種子, 調(diào)用的random()出的隨機(jī)數(shù)是相同 , 那么對(duì)于一個(gè)隨機(jī)數(shù)程序來說 , 可以做到復(fù)現(xiàn)的作用

1.3、擴(kuò)展隨機(jī)數(shù)函數(shù)

二、案例需求

看四分之一的部分 , 使用蒙特卡洛方法 , 模擬1000000次點(diǎn)隨機(jī)落在這個(gè)四分之一上面 , 記錄落在四分之一?內(nèi)的,最后 4*( 四分之一落入圓內(nèi)的隨機(jī)點(diǎn)/四分之一部分面積), 算出來就是圓周率。

使用蒙特卡洛法計(jì)算圓周率
輸入:無
輸出:一般為3.14...

三、案例分析與解決過程

一、怎么使用蒙特卡洛方法計(jì)算圓周率?
答案:看四分之一的部分 , 使用蒙特卡洛方法 , 模擬1000000次點(diǎn)隨機(jī)落在這個(gè)四分之一上面 , 記錄落在四分之一?內(nèi)的,最后 4*( 四分之一落入圓內(nèi)的隨機(jī)點(diǎn)/四分之一部分面積), 算出來就是圓周率。

二、怎么判斷落入點(diǎn)在圓中?
答案:在單位?中 , 半徑為1 , 那么隨機(jī)點(diǎn)的x,y值 , (x平方+y平方之和的開方) 為隨機(jī)點(diǎn)到圓心的距離 , 如果該距離小于1,那么判斷該隨機(jī)點(diǎn)在圓心中. 距離代碼 pow(x2+y2 , 0.2)

四、完整代碼

from random import random  
# 投入1000000個(gè)隨機(jī)點(diǎn)  
DARTS = 1000*1000;  
hits = 0.0  
for i in range (1 , DARTS +1 ):  
x , y =random() ,random() ;  
# 點(diǎn)到圓心的距離  
dist = pow(x**2 + y**2 , 0.5 )  
# 判斷拋出點(diǎn)與圓心距離 , 小于半徑 , 在圓中  
if(dist < 1.0):  
hits = hits +1 ;  
pi = 4 * (hits / DARTS)  
print("圓周率為:{}".format(pi))

五、檢驗(yàn)與驗(yàn)收代碼

六、復(fù)盤所學(xué)知識(shí)

1、隨機(jī)數(shù)庫(kù)random是python的標(biāo)準(zhǔn)庫(kù)

2、常用隨機(jī)函數(shù)random() , seed()

到此這篇關(guān)于基于Python實(shí)現(xiàn)蒙特卡洛法計(jì)算圓周率π的文章就介紹到這了,更多相關(guān)Python 計(jì)算圓周率π內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python捕獲異常堆棧信息的幾種方法(小結(jié))

    Python捕獲異常堆棧信息的幾種方法(小結(jié))

    這篇文章主要介紹了Python捕獲異常堆棧信息的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 使用Selenium破解新浪微博的四宮格驗(yàn)證碼

    使用Selenium破解新浪微博的四宮格驗(yàn)證碼

    今天小編就為大家分享一篇關(guān)于使用Selenium破解新浪微博的四宮格驗(yàn)證碼的文章,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • 終于搞懂了Python中super(XXXX,?self).__init__()的作用了

    終于搞懂了Python中super(XXXX,?self).__init__()的作用了

    本文主要介紹了終于搞懂了Python中super(XXXX,?self).__init__()的作用了,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • Python命名空間詳解

    Python命名空間詳解

    這篇文章主要介紹了Python命名空間詳解,非常重要的概念,需要的朋友可以參考下
    2014-08-08
  • python實(shí)現(xiàn)拉格朗日插值及作圖

    python實(shí)現(xiàn)拉格朗日插值及作圖

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)拉格朗日插值及作圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Python 中 Elias Delta 編碼詳情

    Python 中 Elias Delta 編碼詳情

    這篇文章主要介紹了Python 中 Elias Delta 編碼,下面的文章我們將使用 python 實(shí)現(xiàn) Elias Delta 編碼。具體詳細(xì)內(nèi)容,需要的朋友可以參考一下
    2021-11-11
  • Python調(diào)用百度api實(shí)現(xiàn)語音識(shí)別詳解

    Python調(diào)用百度api實(shí)現(xiàn)語音識(shí)別詳解

    這篇文章主要介紹了Python通過調(diào)用百度api實(shí)現(xiàn)語音識(shí)別,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2021-12-12
  • Python讀取文件的8種常用方式

    Python讀取文件的8種常用方式

    這篇文章主要給大家介紹了關(guān)于Python讀取文件的8種常用方式,在編程語言中,文件讀寫是最常見的IO操作,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • python+appium+yaml移動(dòng)端自動(dòng)化測(cè)試框架實(shí)現(xiàn)詳解

    python+appium+yaml移動(dòng)端自動(dòng)化測(cè)試框架實(shí)現(xiàn)詳解

    這篇文章主要介紹了python+appium+yaml移動(dòng)端自動(dòng)化測(cè)試框架實(shí)現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • PyQt4編程之讓狀態(tài)欄顯示信息的方法

    PyQt4編程之讓狀態(tài)欄顯示信息的方法

    今天小編就為大家分享一篇PyQt4編程之讓狀態(tài)欄顯示信息的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06

最新評(píng)論