Choosing balls from the boxes
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Michal Waligora
am 10 Mai 2022
Bearbeitet: Torsten
am 10 Mai 2022
I found the following question to solve: Game with 13 boxes(no repetitions). Inside each box there is a ball of different colour. There are 3 colours (red, blue and green), and there are 4 balls per colour. One box contains a black ball.
Win: when we pick 4 of the same colour - award: red - 10, blue - 20, green - 50
Loose: when we find black - no award
I would like to write a program, to find the probability of picking the black ball before any 4 of the same colour was found.
My first idea was to write a "for" and than many "if" statements but my plan didn't work:
rCount: # of red balls founded
n = 13
for i = 1:n
if rCount == 4
disp('You won the game with red')
else \\'I would like to write here a code like keep going with the loop'
end
3 Kommentare
Akzeptierte Antwort
Torsten
am 10 Mai 2022
Bearbeitet: Torsten
am 10 Mai 2022
positions_red = 1:4;
positions_blue = 5:8;
positions_green = 9:12;
position_black = 13;
Ntrials = 1e5;
success = 0;
for i = 1:Ntrials
draw = randperm(13);
draw_black = find(draw==position_black);
draw = draw(1:draw_black-1);
redindraw = numel(intersect(draw,positions_red));
blueindraw = numel(intersect(draw,positions_blue));
greenindraw = numel(intersect(draw,positions_green));
if redindraw < 4 && blueindraw < 4 && greenindraw < 4
success = success + 1;
end
if mod(i,1000)==0
disp(i)
end
end
probability = success/Ntrials
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!