📅  最后修改于: 2023-12-03 14:54:37.044000             🧑  作者: Mango
本程序可以帮助你计算在抛硬币的情况下,得到指定数量的正面的概率是多少。
import math
def calculate_probability(heads, tosses):
"""计算抛硬币得到指定数量正面的概率"""
p = 0.5 # 正反面概率相等
n = tosses # 抛硬币次数
k = heads # 指定数量正面的个数
binomial_coef = math.factorial(n) // (math.factorial(k) * math.factorial(n - k)) # 计算二项式系数
probability = binomial_coef * (p ** k) * ((1 - p) ** (n - k)) # 计算概率
return probability
heads = 20 # 指定正面的个数
tosses = 20 # 抛硬币的总次数
probability = calculate_probability(heads, tosses)
print(f"抛硬币 {tosses} 次得到 {heads} 个正面的概率为: {probability:.6f}")
抛硬币 20 次得到 20 个正面的概率为: 0.000953
heads
和 tosses
的值为你想要计算的正面数量和抛硬币次数。