用python计算圆周率PI
from random import random
from math import sqrt
import time
DARTS=10**8 #抛点数10的八次方
hits=0.0
a=1
start=time.perf_counter()
for i in range(1,DARTS+1): #
x,y=random(),random() #随机取两个点坐标
dist=sqrt(x**2+y**2) #两点间距离
if dist<=1.0:
hits=hits+1 #计算圆内的点有多少
if i==DARTS*0.01*a: #输出进度条
print("\r%{}[{}->{}]".format(a,'*'*a,'-'*(10-a)),end="")
a+=3
pi=4*(hits/DARTS) #圆内点数除以总点数的值乘以4即可得到pi
end=time.perf_counter() #运行时间
print("pi值是{}。".format(pi))
print("运行时间:{:5.5}s".format(end-start))
浙公网安备 33010602011771号