const Big_Award=1;
var Player_Box, Remaining_Box, Chosen_Box:byte;
keep, change:longint;
i:longint;
begin
randomize;
keep:=0;
change:=0;
for i:=1 to 100000 do
begin
Player_Box:=random(3)+1;
repeat
Chosen_Box:=random(3)+1;
until (Chosen_Box<>Player_Box) and (Chosen_Box<>Big_Award);
if (Player_Box=1) and (Chosen_Box=2) then Remaining_Box:=3;
if (Player_Box=1) and (Chosen_Box=3) then Remaining_Box:=2;
if (Player_Box=2) and (Chosen_Box=1) then Remaining_Box:=3; {never happens}
if (Player_Box=2) and (Chosen_Box=3) then Remaining_Box:=1;
if (Player_Box=3) and (Chosen_Box=1) then Remaining_Box:=2; {never happens}
if (Player_Box=3) and (Chosen_Box=2) then Remaining_Box:=1;
if Player_Box=Big_Award then inc(keep);
if Remaining_Box=Big_Award then inc(change);
end;
writeln('Keep:',keep,' Change:',change);
readln;
end.
И тъй, при стартиране на програмата, при мен се изведе следното:
Keep: 33357 Change: 66643
Абсолютно ясно е, че е по-добре да подменим кутиите… Но 66-ците да не бързат да се радват 🙂 Премахнах условието (and Chosen_Box<>Big_Award) и стартирах отново. Това означава, че сега не правя проверка дали след като играчът отвори кутията в нея не е голямата награда от 10000….000 лв. Резултатът беше:
Keep: 33636 Change: 33234
А, ами къде отидоха останалите 33130 случая? Ами при тях просто играчът отваря голямата награда! Т.е. сумарно шансът е 50 на 50… Ето, че и 50-ците имат повод за радост. И какво се получава в крайна сметка?
Имаме два момента: преди и след отварянето на кутията. Преди отварянето (момент 1) на кутията шансът да сме избрали голямата награда е 1/3. След отварянето на кутията (момент 2) с 0,20 ст. остават две кутии и шансът е 1/2, т. е. 50 на 50. Заблудата идва от това, че ако вече сме в момент 2, шансът за печалба при размяна на кутиите, отнесен към първоначалният момент 1 е 2/3, а към настоящият момент 2 е 1/2.
Тоест, правилният отговор е ИМАМЕ СДЕЛКА! Но шансът е 50 на 50 🙂
Шансът би бил 66.67%, ако узнаем без риск за някоя непечеливша кутия. Това става в случай с други игри и други правила, при които водещият или друг играч разкриват непечеливш жребий/кутия/карта/врата/топче/…, както е при Monty Hall-проблемът…
Благодаря на всички, които писаха коментари… И се надявам, че пак ще пишат в следващите задачки. Много сте умни, гордея се с вас! 🙂
И така – краен отговор: 50 на 50!
Просто и логично. В заключение ще кажа само, че на мен задачката много ми хареса и ме накара няколко пъти да се усъмня във всичко.
„Доколко човек е цивилизован зависи не от силната му вяра,
а от готовността му да се съмнява…“
– Henry Louis Mencken