蒙特卡罗方法模拟推算圆周率-Python

# 代码来自北京理工大学慕课课程-Python程序设计
# 蒙特卡罗方法模拟推算圆周率
# 随机的让点落入一个正方形,求点落在距离圆心小于等于半径得概率
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)
    # 默认半径为1,如果距离小于等于1则记录命中一次
    if dist <= 1.0:
        hits = hits + 1
# 为什么要乘以4?:可以将园与正方形面积及两者关系表示出来,即可得到pi的推算式
pi = 4 * (hits/DARTS)
print("圆周率值是:{}".format(pi))
print("运行时间是:{:.5f}s".format(perf_counter()-start))

你可能感兴趣的:(小点,python,pandas,pyqt,pip,httpx)