I have two children. One is a boy born on a Tuesday. What is the probability I have two boys?

You can read the article with the riddle here: Hype about conditional probability puzzles

The riddle was also mentioned this week on SPON: DE Das Geschwister-Problem

As normal there is a lot of discussion in the article comments about the solution 13/27.

So just proof the solution with a simulation.

  1. Create 1.000.000 families with two children {m,f} 50:50 and born on {sa,su,mo,tu,we,th,fr} 1:7
  2. Count chance, that family has two boys 1/4
  3. Count chance, that family has two boys, if you know that one child is a boy 1/3
  4. Count chance, that family has two boys, if you know that one child is a boy and born on tuesday 13/27

If you program it, it is obvious, that each additional information (one child is a boy, one child is a boy born on tuesday) changes the sample for the probability calculation.

Simple ABAP program
 CONSTANTS: c_female TYPE i VALUE 0, c_male TYPE i VALUE 1, c_saturday TYPE i VALUE 0, c_sunday TYPE i VALUE 1, c_monday TYPE i VALUE 2, c_tuesday TYPE i VALUE 3, c_wednesday TYPE i VALUE 4, c_thursday TYPE i VALUE 5, c_friday TYPE i VALUE 6. TYPES: BEGIN OF ys_family, child1_gender TYPE i, child1_day_of_the_week TYPE i, child2_gender TYPE i, child2_day_of_the_week TYPE i, END OF ys_family. DATA: lo_rnd TYPE REF TO cl_random_number, ls_family TYPE ys_family, lt_family TYPE TABLE OF ys_family, li_won TYPE i, li_lost TYPE i, li_total TYPE i. CREATE OBJECT lo_rnd. CALL METHOD lo_rnd->if_random_number~init. DO 1000000 TIMES. ls_family-child1_gender = lo_rnd->if_random_number~get_random_int( 1 ). ls_family-child1_day_of_the_week = lo_rnd->if_random_number~get_random_int( 6 ). ls_family-child2_gender = lo_rnd->if_random_number~get_random_int( 1 ). ls_family-child2_day_of_the_week = lo_rnd->if_random_number~get_random_int( 6 ). APPEND ls_family TO lt_family. ENDDO. WRITE: / 'Chance to have two male children'. CLEAR: li_won, li_lost. LOOP AT lt_family INTO ls_family. ADD 1 TO li_total. IF ls_family-child1_gender EQ c_male AND ls_family-child2_gender EQ c_male. ADD 1 TO li_won. ELSE. ADD 1 TO li_lost. ENDIF. ENDLOOP. WRITE: / 'total', li_total, 'Won:', li_won, 'Lost:', li_lost. li_won = li_won * 100 / li_total. li_lost = li_lost * 100 / li_total. li_total = li_total * 100 / li_total. WRITE: / 'total', li_total, '%', 'Won:', li_won, '%', 'Lost:', li_lost, '%'. ULINE. WRITE: / 'Chance to have two male children, if you know that first child is male'. CLEAR: li_won, li_lost. LOOP AT lt_family INTO ls_family. IF ls_family-child1_gender EQ c_male OR ls_family-child2_gender EQ c_male. ADD 1 TO li_total. IF ls_family-child1_gender EQ c_male AND ls_family-child2_gender EQ c_male. ADD 1 TO li_won. ELSE. ADD 1 TO li_lost. ENDIF. ENDIF. ENDLOOP. WRITE: / 'total', li_total, 'Won:', li_won, 'Lost:', li_lost. li_won = li_won * 100 / li_total. li_lost = li_lost * 100 / li_total. li_total = li_total * 100 / li_total. WRITE: / 'total', li_total, '%', 'Won:', li_won, '%', 'Lost:', li_lost, '%'. ULINE. WRITE: / 'Chance to have two male children, if you know that first child is male and born on tuesday'. CLEAR: li_won, li_lost. LOOP AT lt_family INTO ls_family. IF ls_family-child1_gender EQ c_male OR ls_family-child2_gender EQ c_male. IF ( ls_family-child1_gender EQ c_male AND ls_family-child1_day_of_the_week EQ c_tuesday ) OR ( ls_family-child2_gender EQ c_male AND ls_family-child2_day_of_the_week EQ c_tuesday ). ADD 1 TO li_total. IF ls_family-child1_gender EQ c_male AND ls_family-child2_gender EQ c_male. ADD 1 TO li_won. ELSE. ADD 1 TO li_lost. ENDIF. ENDIF. ENDIF. ENDLOOP. WRITE: / 'total', li_total, 'Won:', li_won, 'Lost:', li_lost. li_won = li_won * 100 / li_total. li_lost = li_lost * 100 / li_total. li_total = li_total * 100 / li_total. WRITE: / 'total', li_total, '%', 'Won:', li_won, '%', 'Lost:', li_lost, '%'.
Output example
Chance to have two male children total 1.000.000 Won: 250.442 Lost: 749.558 total 100 % Won: 25 % Lost: 75 % Chance to have two male children, if you know that first child is male total 750.485 Won: 250.442 Lost: 499.943 total 100 % Won: 33 % Lost: 67 % Chance to have two male children, if you know that first child is male and born on Tuesday total 138.231 Won: 66.430 Lost: 71.701 total 100 % Won: 48 % Lost: 52 %

New NetWeaver Information at SAP.com

Very Helpfull

User Rating: Be the first one !