你們好,我是教育新聞網(wǎng)的客服熊熊,今天為大家說一下這個(gè)使用python計(jì)算PI值相關(guān)的問題。
使用python計(jì)算PI值的方法步驟:
1、圓周率的計(jì)算方法有很多種,其中比較容易計(jì)算的一種是蒙特卡羅方法,它利用圓與其外接圓的面積比之間的關(guān)系為pi/4,通過大量均勻分布的點(diǎn)計(jì)算落在單位圓和單位圓上的數(shù)的比值,然后乘以4得到圓周率的近似值。
2、這就是性質(zhì):正方形內(nèi)部有一個(gè)切圓,它們的面積比為/4(初中數(shù)學(xué))
3、方法:
4、1)隨機(jī)給點(diǎn),畫圓。
5、2)通過距離判斷該點(diǎn)在圓內(nèi)還是圓外,然后統(tǒng)計(jì)圓內(nèi)的點(diǎn)數(shù)。
6、將cv2作為cvimport numpy作為npimport copy import osfrom random import random from random import randint from math import sqrt
7、image=np.zeros((500,500,3),dtype='uint8')red=(0,0,255) #8green=(0,255,0)cv.rectangle(image,(0,0),(500,500),red)cv.imshow('rectangle ',image)
8、這是一個(gè)500*500的正方形。500是為了方便。畢竟1太小看不到。
9、給出樣本值
10、Num=1000樣本值drawpoint=0范圍(1,num) :x中I的點(diǎn)號(hào),y=randint (0,500),randint (0,500)隨機(jī)整數(shù)點(diǎn)=(x,y) cv。圓(圖像,點(diǎn),1,綠色,1)點(diǎn)位置=sqrt (x * * 2y * * 2)如果位置=5003360 #統(tǒng)計(jì)比較drawpoint=drawpoint 1累積pi=4*(drawpoint/num)查找PIprint(pi)
11、cv.imshow('drawpoint ',圖像)
12、我們隨機(jī)打出了數(shù)分。
13、畫一個(gè)內(nèi)切圓,這樣好看。
14、PtCenter=(0,0) #中心點(diǎn)位置axesSize=(500,500) #長(zhǎng)軸半徑為500,短軸半徑為500rotateAngle=0 #旋轉(zhuǎn)角度為0開始角度=0角度=360 point _ color=(0,0,255)厚度=1線型=1cv .橢圓(圖像,PtCenter,axesSize,rotateAngle,start angle,endAngle,point _ color,thickness,lineType)cv.imshow('pi ',圖像)cv
15、看看圓周率的值。
16、3.156樣本大小1000
17、讓我們將樣本數(shù)增加10000,看看PI是什么。
18、看到很多強(qiáng)烈的恐懼癥。
19、PI=3.1504
20、增加10萬(wàn)
21、PI=3.13428
22、因此,樣本點(diǎn)越多,計(jì)算數(shù)據(jù)就越接近真實(shí)pi。
今天文章就到此結(jié)束了,希望本文的內(nèi)容能對(duì)大家有所幫助!