蒙特卡罗算法生成随机数代码
时间: 2024-09-09 14:00:44 浏览: 37
蒙特卡罗算法是一种基于概率统计的数值计算方法,它通过大量随机抽样来估算某个问题的概率或求解复杂函数。在实际编程中,特别是涉及到模拟、优化等场景,可以利用随机数生成来实现。以下是一个简单的Python代码示例,使用了random库中的功能来生成随机数:
```python
import random
def monte_carlo_integration(n):
"""
使用蒙特卡洛方法估计圆周率 pi
参数:
n (int): 随机点的数量
返回:
pi 的近似值
"""
inside_circle = 0
for _ in range(n):
# 生成 (-1, 1) 区间内的 x 和 y 坐标
x = random.uniform(-1, 1)
y = random.uniform(-1, 1)
# 如果坐标位于单位圆内(x^2 + y^2 <= 1),计数加一
if x**2 + y**2 <= 1:
inside_circle += 1
# 根据圆面积与正方形边长的关系估算 pi
pi_estimate = (4 * inside_circle) / n
return pi_estimate
# 示例运行并打印 pi 的近似值
n_samples = 1000000
estimated_pi = monte_carlo_integration(n_samples)
print(f"蒙特卡洛方法估算的 pi 约为: {estimated_pi}")
阅读全文