圆周率

点击查看代码
import random
import time
from tqdm import tqdm

def calculate_pi(num_samples):
    """
    使用蒙特卡洛方法计算π。
    :param num_samples: 样本数量,即模拟的点数。
    :return: 计算得到的π值。
    """
    inside_circle = 0
    for _ in tqdm(range(num_samples), desc="Calculating Pi"):
        x, y = random.random(), random.random()
        distance = x**2 + y**2
        if distance <= 1:
            inside_circle += 1
    pi_estimate = (inside_circle / num_samples) * 4
    return pi_estimate

def main():
    num_samples = 10000000  # 可以根据需要调整样本数量以提高精度
    pi = calculate_pi(num_samples)
    print(f"Estimated value of Pi: {pi:.10f}")

if __name__ == "__main__":
    main()
posted @ 2025-04-27 20:26  佘婷婷  阅读(9)  评论(0)    收藏  举报