用程序验证生日“悖论”

生日“悖论”其实并不是悖论,它是说在一个人数超过23人的集体中,至少有两个人生日在同一天的概率约为0.5。因为这个理论上的概率与人们的直觉不符,才会被称为“悖论”。

我们可以用一个简单的小程序验证它哦:

import random
def birth_paradox(n):
    dic={}
    for i in range(n):
        m=random.randint(1,12)
        if m in [1,3,5,7,8,10,12]:
            d=random.randint(1,31)
        elif m in [2]:
            d=random.randint(1,28)
        else:
            d=random.randint(1,30)
        dic[i]=m,d
    if len(set(list(dic.values())))<n:
        return True
    else:
        return False
t=0
for i in range(1000):
    if birth_paradox(23):
        t+=1
print(t/1000)

运行结果如下:


由于引入了随机数,所以每次运行的结果稍有不同哦~

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值