Python实例6:圆周率的计算(蒙特卡罗方法)

Python实例6:圆周率的计算(蒙特卡罗方法)_第1张图片

通过1/4圆面积和正方形面积的比值可以求出和π相关的一个数值

代码实现:

from random import random
from time import perf_counter
DARTS = 1000*1000
hits = 0.0
start = perf_counter()
for i in range(1,DARTS+1):
    x, y = random(), random()
    dist= pow(x**2 + y**2, 0.5)
    if dist <= 1.0:
        hits = hits + 1
pi = 4*(hits/DARTS)
print("圆周率值是:{}".format(pi))
print("运行时间是:{:.5f}s".format(perf_counter() - start))

你可能感兴趣的:(py)