亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

實現(xiàn)用python算法計算圓周率的小訣竅

 更新時間:2021年08月31日 14:56:53   作者:不吃西紅柿丶  
什么!你不會背圓周率(鄙夷的眼神) 3.1415926535 8979323846 26433... 但是,我會算啊,本文用一個簡單的python代碼,教你計算圓周率

一、圓周率的歷史

1、中國

魏晉時期,劉徽曾用使正多邊形的邊數(shù)逐漸增加去逼近圓周的方法 (即「割圓術(shù)」),求得π的近似值3.1416。

漢朝時,張衡得出π的平方除以16等于5/8,即π等于10的開方(約為3.162)。雖然這個值不太準(zhǔn)確,但它簡單易理解,所以也在亞洲風(fēng)行了一陣。

王蕃(229-267)發(fā)現(xiàn)了另一個圓周率值,這就是3.156, 但沒有人知道他是如何求出來的(ps. 沒開源唄?。?。

公元5世紀(jì),祖沖之和他的兒子以正24576邊形,求出圓周率約為355/113,和真正的值相比,誤差小于八億分之一。

這個紀(jì)錄在一千年后才給打破。(ps. 在大部分人不知股股定理年代,真牛?。?/p>

2、印度

約在公元530年,數(shù)學(xué)大師阿耶波多利用384邊形的周長,算出圓周率約為√9.8684。

婆羅門笈多采用另一套方法,推論出圓周率等于10的平方根。(ps. 跟張衡大佬的結(jié)果一致,但過程不同)

3、歐洲

斐波那契算出圓周率約為3.1418。

韋達(dá)用阿基米德的方法,算出3.1415926535<π<3.1415926537。

他是第一個以無限乘積敘述圓周率的人。

魯?shù)婪蛉f科倫以邊數(shù)多過32000000000的多邊形算出有35個小數(shù)位的圓周率。

華理斯在1655年求出一道公式π/2=2×2×4×4×6×6×8×8...../3×3×5×5×7×7×9×9......

歐拉發(fā)現(xiàn)的e的iπ次方加1等于0,成為證明π是超越數(shù)的重要依據(jù)。

二、用python計算圓周率π

【方法】

蒙特卡洛法

【程序設(shè)計思路】

使用python random庫隨機生成點,落在正方形內(nèi),計算正方形內(nèi)的圓內(nèi)落點與正方形內(nèi)落點之比,近似為面積之比,隨機數(shù)越隨機,數(shù)量越大越準(zhǔn)確。

【軟件環(huán)境】

python 3.6(本程序可兼容python 2.x)

【代碼】

from random import random
from time import perf_counter
 
def calPI(N = 100):
    hits = 0
    start = perf_counter()
    for i in range(1, N*N+1):
        x, y = random(), random()
        dist = pow(x ** 2 + y ** 2, 0.5)
        if dist <= 1.0:
            hits += 1
    pi = (hits * 4) / (N * N)
    use_time = perf_counter() - start
    return pi, use_time
 
PI, use_time = calPI(10000)
print('use Monte Carlo method to calculate PI: {}'.format(PI))
print('use time: {} s'.format(use_time))

【結(jié)果展示】

震驚:10000次隨機數(shù),精確到3.1415了,把橋哥放在1000年前,可不得了

【常見問題答疑】

(每篇文章都有很多粉絲私信我,提前答疑一下?。。?/p>

1、運行程序前,先導(dǎo)入頂部的包,怎么導(dǎo)包看這里:http://chabaoo.cn/article/221337.htm

2、本文使用的random 和 time庫為python自帶,無需導(dǎo)入,可直接執(zhí)行程序。

以上就是實現(xiàn)用python算法計算圓周率的小訣竅的詳細(xì)內(nèi)容,更多關(guān)于python算法計算圓周率的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • LyScript實現(xiàn)Hook改寫MessageBox的方法詳解

    LyScript實現(xiàn)Hook改寫MessageBox的方法詳解

    LyScript可實現(xiàn)自定義匯編指令的替換功能。用戶可自行編寫匯編指令,將程序中特定的通用函數(shù)進行功能改寫與轉(zhuǎn)向操作,此功能原理是簡單的Hook操作。本文將詳細(xì)介紹Hook改寫MessageBox的方法,感興趣的可以了解一下
    2022-09-09
  • python人工智能tensorflow函數(shù)tf.nn.dropout使用方法

    python人工智能tensorflow函數(shù)tf.nn.dropout使用方法

    這篇文章主要為大家介紹了python人工智能tensorflow函數(shù)tf.nn.dropout使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Python 常見加密操作的實現(xiàn)

    Python 常見加密操作的實現(xiàn)

    這篇文章主要介紹了Python 常見加密操作的實現(xiàn),幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-03-03
  • python sqlalchemy動態(tài)修改tablename兩種實現(xiàn)方式

    python sqlalchemy動態(tài)修改tablename兩種實現(xiàn)方式

    這篇文章主要介紹了python sqlalchemy動態(tài)修改tablename兩種實現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-03-03
  • python 批量壓縮圖片的腳本

    python 批量壓縮圖片的腳本

    用Python編寫的批量壓縮圖片的腳本,可以自定義壓縮質(zhì)量,有批量圖片壓縮需求的朋友可以直接拿來用
    2021-06-06
  • Python實現(xiàn)多進程的四種方式

    Python實現(xiàn)多進程的四種方式

    今天小編就為大家分享一篇關(guān)于Python實現(xiàn)多進程的四種方式,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 解決python super()調(diào)用多重繼承函數(shù)的問題

    解決python super()調(diào)用多重繼承函數(shù)的問題

    今天小編就為大家分享一篇解決python super()調(diào)用多重繼承函數(shù)的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • python 一維二維插值實例

    python 一維二維插值實例

    這篇文章主要介紹了python 一維二維插值實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python中不同進制的語法及轉(zhuǎn)換方法分析

    Python中不同進制的語法及轉(zhuǎn)換方法分析

    這篇文章主要介紹了Python中不同進制的語法及轉(zhuǎn)換方法,結(jié)合實例形式分析了Python不同進制的表示方法及相互轉(zhuǎn)換方法,需要的朋友可以參考下
    2016-07-07
  • python區(qū)塊鏈基本原型簡版實現(xiàn)示例

    python區(qū)塊鏈基本原型簡版實現(xiàn)示例

    這篇文章主要為大家介紹了python區(qū)塊鏈基本原型簡版實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05

最新評論