7-8 python -蒙特卡洛方法求圆周率的代码
时间: 2023-09-10 17:15:25 浏览: 297
蒙特卡洛方法计算圆周率.py
以下是使用蒙特卡洛方法求解圆周率的 Python 代码:
```python
import random
n = int(input("请输入样本点数:"))
count = 0
for i in range(n):
x, y = random.uniform(-1, 1), random.uniform(-1, 1)
if x ** 2 + y ** 2 <= 1:
count += 1
pi = 4 * count / n
print("估计的圆周率为:", pi)
```
解释一下代码的思路:
- 首先通过 `input` 函数获取样本点个数 `n`;
- 然后定义变量 `count`,用于记录落入单位圆内的样本点个数;
- 在 `for` 循环中,每次随机生成一个二维平面上的点 `(x, y)`,判断该点是否在单位圆内:若在,则将 `count` 加一;
- 最后根据蒙特卡洛方法的公式,计算估计的圆周率 `pi`;
- 最后输出结果。
需要注意的是,样本点数 `n` 要足够大,才能得到较为准确的估计值。
阅读全文