Enly

导航

作业一:用python计算圆周率PI

算法说明:

蒙特卡罗方法计算π:通过在一个正方形内随机生成点,并计算落在一个四分之一圆内的点的比例,从而估算 π 的值。以下是一个示例代码,使用了 random 模块来进行估算,并使用 tqdm 模块来创建进度条

代码:

import random
import math
from tqdm import tqdm

def estimate_pi(num_samples):
inside_circle = 0
for _ in tqdm(range(num_samples), desc="Estimating PI", ncols=100):
x = random.uniform(0, 1)
y = random.uniform(0, 1)
if x**2 + y**2 <= 1:
inside_circle += 1
pi_estimate = (inside_circle / num_samples) * 4
return pi_estimate

num_samples = int(math.pow(10, 10)) # 你可以根据需要调整采样点的数量
pi = estimate_pi(num_samples)
print(f"估算的π值为: {pi}")

运行截图:

 运行结果对比(一个是10的10次方,一个是10的9次方):

 

posted on 2023-10-31 22:15  Enly_321  阅读(126)  评论(0)    收藏  举报