# 实现π的计算
import random
import time
# 随机点的个数, 点越多,月精确, 取极限的思想
DARTS = 10000
# 在圆弧里面点的个数
hits = 0.0
start = time.time()
for i in range(1, DARTS + 1):
# 获取一个点的横坐标,纵坐标, 然后勾股定理
x, y = random.random(), random.random()
dist = pow(x ** 2 + y ** 2, 0.5)
if dist <= 1.0:
hits = hits + 1
# 根据 在单位圆外做四条正切线,形成一个正方形,可知:
# πr平方 圆的面积
# ------ = --------
# 4r平方 正方形的面积
# 所以点越多,就越能占满正方形,可知道 π等于圆/正 的面积乘以4
pi = 4 * (hits / DARTS)
end = time.time()
print("π的值是{}".format(pi))
print("运行的时间是:%.5f" % (end - start))