# 实现π的计算 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))