Python使用蒙特卡洛法计算圆周率

蒙特卡洛方法通过在单位正方形内随机生成点,并判断这些点是否在单位圆内的比例来估算圆周率。当随机点数量越多时,估算值越趋近于真实值。

以下是Python代码示例:

import random

def estimate_pi(num_iterations):
    num_points_in_circle = 0
    total_num_points = 0
    
    for i in range(num_iterations):
        x = random.uniform(0, 1)
        y = random.uniform(0, 1)
        distance = x**2 + y**2
        
        if distance <= 1:
            num_points_in_circle += 1
        
        total_num_points += 1
    
    pi_estimate = 4 * num_points_in_circle / total_num_points
    return pi_estimate

# 调用函数进行估算,num_iterations为估算次数
print(estimate_pi(1000000))

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/calculate-the-value-of-pi-using-monte-carlo-method-in-python.html

分类: 计算机技术
推荐阅读:
Python str()函数 str() 函数用于将指定的对象转换为字符串类型。如果对象已经是字符串类型,则返回对象本身;否则,会调用对象的 __str__() 方法来进行转换。
C/C++程序打印输出中文导致乱码的解决方法 C/C++程序打印输出中文导致乱码的解决方法如下:
Linux将上一条执行的命令写入文件 在Linux下,你可以将刚刚输入的最后一条命令写入文件里,而且只需要一条命令,免去了创建文件,重复输入的过程;
TypeError: __format__ must return a str, not NoneType 在 Python 中,如__format__()方法必须返回一个字符串,否则将触发类似TypeError: __format__ must return a str, not NoneType的错误;
提示Permission denied的解决方法 通常,提示Permission denied表示你的某个操作权限不够;在Linux系统中,权限分为读权限、写权限和可执行权限,当你所在的用户组没有相关权限时,则会提示Permission denied;
一条Linux命令生成一个指定长度的随机密码 在Linux系统下,你可以只需要一条命令就可以生成指定长度的随机密码: