Choose random between two option.
43 views (last 30 days)
Show older comments
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 Comments
Answers (2)
Image Analyst
on 23 Mar 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 Comments
Walter Roberson
on 22 Dec 2020
Edited: Walter Roberson
on 22 Dec 2020
r = rand() > 0.60
thisSex = sexes{r+1}
By the way: my modeling says 2/3 girls on average.
Valerie Reinisch
on 22 Dec 2020
Tried it in the meanwhile with this:
r = binornd(1,0.6)
But thanks a lot for this quick answer! (:
Roger Stafford
on 23 Mar 2017
Edited: Roger Stafford
on 23 Mar 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 Comment
Walter Roberson
on 22 Dec 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
See Also
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!