我是python的新手,正在尝试通过小型项目进行学习:
我正在尝试编写一个代码,假设您与另外n个学生一起参加大班教学,请确定n必须多大才能使某人与您同生日的概率大于50%? 注意:忘记leap年 因此,假设一年中有365天,那么没有人与您的生日相同的概率是(364/365)** n
我的代码是:
n=probability
probability = 0
while n==0.50*n:
print("With n students, the
probability
is greater than
50% that someone has the same
birthday
as you.")
我要去哪里了?我该如何执行if语句?我要寻找的输出是:
有253名学生,某人的可能性大于50% 和你生日相同。
答案 0 :(得分:0)
在不完全重做的情况下,我不知道如何解决您的代码,所以我们开始:
p = 1/365
n = 0
# Search for the number of students that ensures p(same birthday)>50%.
while 1-(1-p)**n < 0.50 :
n = n+1
print("With {number} students, the probability is greater than 50% that someone has the same birthday as you.".format(number=n))
随时询问其他信息。
答案 1 :(得分:0)
这不会返回输出,因为n == 0.5 * n的条件为false,因此循环永远不会开始。