Недавно я смотрел видео о задаче Монти Холла и заинтересовался тем фактом, что участник 2/3 шанса на победу при переключении. Итак, я решил написать для него симуляцию, чтобы убедиться в этом лично. Однако моя симуляция дала ответ равный 50%. Может ли кто-нибудь указать, почему? Примечание: количество дверей можно изменить, изменив num_of_doors
.
from random import randint
num_of_doors = 3
num_of_simulations = 0
wins = 0
while True:
num_of_simulations += 1
doors = {k: "Donkey" for k in range(1, num_of_doors + 1)}
car = randint(1, num_of_doors)
doors[car] = "Car"
choice = randint(1, num_of_doors)
while len(doors) > 2:
reveal = randint(1, num_of_doors)
if reveal in doors:
if reveal != choice and doors[reveal] != "Car":
del doors[reveal]
for k in doors:
if k != choice:
choice = k
if doors[choice] == "Car":
wins += 1
print(100 * wins / num_of_simulations)
break
послеchoice = k
. - person Paul Panzer   schedule 10.05.2018