用python实现计算投1000,10000次般子点数3朝上的概率,并画图(横坐标为投的次数,纵坐标为频率)。
时间: 2024-09-28 11:12:03 浏览: 30
在Python中,我们可以使用`random`模块来模拟抛掷骰子的过程,然后统计结果来计算投掷特定次数(如1000次或10000次)得到3朝上(即正面)的概率。同时,我们还可以使用matplotlib库来绘制图表。
首先,安装必要的库(如果尚未安装):
```bash
pip install matplotlib random
```
接着,编写一个函数来执行模拟并计算概率:
```python
import random
import matplotlib.pyplot as plt
def simulate_rolls(n_rolls, n_sides=6):
successes = 0
for _ in range(n_rolls):
if random.randint(1, n_sides) == 3:
successes += 1
return successes / n_rolls
# 计算1000次和10000次投掷3朝上的概率
prob_1000 = simulate_rolls(1000)
prob_10000 = simulate_rolls(10000)
print(f"投掷1000次得到3朝上的概率大约是 {prob_1000 * 100:.2f}%")
print(f"投掷10000次得到3朝上的概率大约是 {prob_10000 * 100:.2f}%")
# 绘制条形图
x_labels = ['1000次', '10000次']
y_values = [prob_1000, prob_10000]
plt.bar(x_labels, y_values, label='3朝上')
plt.xlabel('投掷次数')
plt.ylabel('频率(%)')
plt.title('投掷骰子得到3朝上的概率分布')
plt.legend()
plt.show()
```
运行这段代码,你会得到相应的概率值以及一张显示这两个概率随投掷次数变化的条形图。
阅读全文