我是靠谱客的博主 忧郁奇异果,最近开发中收集的这篇文章主要介绍python生日悖论_python 生日悖论概率计算。,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

生日悖论指如果一个房间里有23 或以上人,那么至少有两个人生日相同的 概率大于50%。编写程序,输出在不同随机样本数量下,23 个人中至少两个人生日相同的概率。

from random import randint

def list_birth():

list_birth=[]

for i in range(23):

x=randint(1,12)

if x in [1,3,5,7,8,10,12]:

y=randint(1,31)

elif x==2:

y=randint(1,28)

else:

y=randint(1,30)

list_birth.append((x,y))

return list_birth

#建立生日日期对的列表,这里也可以用365天来算

def set_birth():

set_birth=set(list_birth())

return set_birth

#转换成集合是为了去重,若集合长度小于23,则说明,有生日一样的日期被去掉了

def main(count):

n=0

for i in range(count):

list_birth()

set_birth()

if len(set_birth())<23:n=n+1

chance=n/count #计算去重的次数占总循环次数的比例,即概率

print("{:.2%}".format(chance))

main(10000)

最后

以上就是忧郁奇异果为你收集整理的python生日悖论_python 生日悖论概率计算。的全部内容,希望文章能够帮你解决python生日悖论_python 生日悖论概率计算。所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部