硬币计数器 python
时间: 2023-08-19 21:13:07 浏览: 190
Python 硬币兑换问题
在Python中,可以使用以下代码来实现硬币计数器:
```python
import numpy as np
def coin_counter(num_games, num_flips, prob_heads=0.5):
counter = 0
for _ in range(num_games):
heads_count = 0
for _ in range(num_flips):
if np.random.uniform(0, 1) <= prob_heads:
heads_count += 1
else:
heads_count = 0
if heads_count == num_flips:
counter += 1
break
return counter
```
这个函数`coin_counter`接受三个参数:`num_games`表示要进行多少次游戏,`num_flips`表示连续正面的次数,`prob_heads`表示硬币正面的概率,默认为0.5。
函数的逻辑是,对于每一次游戏,进行`num_flips`次硬币抛掷,如果连续出现了`num_flips`次正面,则计数器加1。最后返回计数器的值。
你可以调用这个函数来进行硬币计数器的模拟实验,比如:
```python
num_games = 100000
num_flips = 3
prob_heads = 0.5
result = coin_counter(num_games, num_flips, prob_heads)
print("在{}次游戏中,连续出现{}次正面的次数为:{}".format(num_games, num_flips, result))
```
这样就可以得到在100000次游戏中,连续出现3次正面的次数。
请注意,这个函数使用了NumPy库来生成随机数,因此需要先安装NumPy库。
阅读全文