誕生日の「パラドックス」は実際にはパラドックスではありません。つまり、23人を超えるグループでは、少なくとも2人が同じ日に誕生日を持つ確率は約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)
結果は次のとおりです。
乱数の導入により、各実行の結果はわずかに異なります〜