📌  相关文章
📜  在N次抛硬币中获得K个头的可能性(1)

📅  最后修改于: 2023-12-03 15:07:54.467000             🧑  作者: Mango

在N次抛硬币中获得K个头的可能性

本文介绍如何编写一个程序来计算在N次抛硬币中,获得K个头的可能性。

算法

我们可以使用二项式分布来计算这个概率。

在N次独立的抛硬币中,出现K个正面朝上的概率为二项式分布的概率质量函数:

P(X = K) = C(N,K) * p^K * (1-p)^(N-K)

其中,C(N,K)表示从N个硬币中选取K个正面朝上的组合数,p为硬币正面朝上的概率,1-p即为反面朝上的概率。

因此,我们可以通过编写一个计算二项式分布的程序来解决这个问题。

代码

以下是使用Python编写的计算二项式分布的程序。

from math import comb

def binomial_pmf(n, k, p):
    return comb(n, k) * p**k * (1-p)**(n-k)

n = 10  # 投掷硬币的次数
k = 3   # 正面朝上的次数
p = 0.5 # 硬币正面朝上的概率

pmf = binomial_pmf(n, k, p)

print(f"在{n}次投掷硬币中,获得{k}个正面朝上的概率为{pmf:.4f}")

运行结果:

在10次投掷硬币中,获得3个正面朝上的概率为0.1172
总结

本文介绍了如何计算在N次抛硬币中,获得K个头的可能性。我们使用二项式分布来计算这个概率,然后编写了一个程序来解决这个问题。