Choose random between two option.
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi, i want to choose randomly between the "boy" or "girl", how can i do that? Each has the same probability of 50%.
i want to calculate this question:
In a country in which people only want boys … … every family continues to have children until they have a boy. If they have a girl, they have another child. If they have a boy, they stop. What is the proportion of boys to girls in the country? Tnx
0 Kommentare
Antworten (2)
Image Analyst
am 23 Mär. 2017
Hint:
sexes = {'Boy', 'Girl'};
r = randi([1, 2], 1) % Get a 1 or 2 randomly.
thisSex = sexes(r) % Extract the sex for this random number.
3 Kommentare
Walter Roberson
am 22 Dez. 2020
Bearbeitet: Walter Roberson
am 22 Dez. 2020
r = rand() > 0.60
thisSex = sexes{r+1}
By the way: my modeling says 2/3 girls on average.
Valerie Reinisch
am 22 Dez. 2020
Tried it in the meanwhile with this:
r = binornd(1,0.6)
But thanks a lot for this quick answer! (:
Roger Stafford
am 23 Mär. 2017
Bearbeitet: Roger Stafford
am 23 Mär. 2017
There should be no need to go through such a simulation. For each birth the probability that a boy is born is one-half regardless of all the tricks the family may play.
However if you are addicted to more complicated computations, the average number of boys per family is:
1/2*1 + 1/4*1 + 1/8*1 + ... = 1
and the average number of girls per family is:
1/2*0 + 1/4*1 + 1/8*2 + 1/16*3 + 1/32*4 + ... = 1
You can use symsum to verify these.
1 Kommentar
Walter Roberson
am 22 Dez. 2020
trials = 1E6;
isboy = rand(trials,53) <= 0.5;
child_number_for_boy = sum(cumprod(~isboy,2),2) + 1;
avg_number_of_girls = mean(child_number_for_boy - 1)
max_number_of_girls = max(child_number_for_boy) - 1
Siehe auch
Kategorien
Mehr zu Descriptive Statistics and Visualization finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!