📅  最后修改于: 2023-12-03 15:25:57.227000             🧑  作者: Mango
这个问题可以通过统计学中的二项分布来解决。二项分布是一种离散概率分布,代表在 n 次独立的是/否试验中成功的次数的概率分布,其中每次试验成功的概率为 p。
在这个问题中,每次掷硬币是一次试验,成功是指掷到正面。因此,我们可以将这个问题看作是三次成功概率为 0.5 的二项分布之和。
下面是一个 Python 代码示例,用于计算掷硬币 3 次得到 3 个正面的概率:
import math
def binomial_coefficient(n, k):
return math.factorial(n) // (math.factorial(k) * math.factorial(n - k))
def binomial_probability(n, p, k):
return binomial_coefficient(n, k) * (p ** k) * ((1 - p) ** (n - k))
P = binomial_probability(3, 0.5, 3)
print(f"The probability of getting 3 heads in 3 coin tosses is {P:.3f}.")
上面的代码中,我们首先定义了一个函数 binomial_coefficient
,用于计算组合数。这个函数使用了 math 模块中的阶乘函数,同时使用整数除法运算符 //
来计算组合数。
然后我们定义了一个函数 binomial_probability
,用于计算二项分布的概率。这个函数使用了上面定义的组合数函数,同时使用了乘法和幂操作符 **
来计算概率。
最后我们计算了掷硬币 3 次得到 3 个正面的概率,并使用 print
函数输出结果。
上面代码的结果会输出以下信息:
The probability of getting 3 heads in 3 coin tosses is 0.125.
因此,掷硬币 3 次得到 3 个正面的概率是 0.125,或者说是 12.5%。