python编程问题? 20

用蒙特卡洛抛点法计算圆周率,对应抛点数为2的10次方,15次方,20次方,25次方。运行计算圆周率并统计运行之间。求大神解答... 用蒙特卡洛抛点法计算圆周率,对应抛点数为2的10次方,15次方,20次方,25次方。运行计算圆周率并统计运行之间。求大神解答 展开
 我来答
百度网友6bdc619
2020-05-07
知道答主
回答量:7
采纳率:0%
帮助的人:4319
展开全部
from random import random
from time import perf_counter

DARTS = 10000 * 10000 # 撒点总个数
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:
hits += 1 # 落在圆内的个数
pi = 4 * (hits / DARTS)
print("圆周率的值是:{}".format(pi))
print("运行时间:{:.5f}s".format(perf_counter() - start))
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式