Kleines Rätsel zum Feierabend

Gast #3093455
Lesenswert?

Passend zur Frauenquote:

In Hinterwald will jedes Paar unbedingt ein männliches Baby. Kriegt ein 
Päärchen eine Tochter, zeugt es ein weiteres Baby. Dies wird von jedem 
Paar solange wiederholt bis ein Junge geboren wird. Wie ist die 
Geschlechterverteilung der Babys (m : w) sobald jedes Paar einen Jungen 
hat?

Annahme: Mädchen oder Junge ist gleichwahrscheinlich.

Disclaimer: Aus dem Hausaufgabenalter bin ich raus ;)

Follow-Up: Mädchen oder Junge ist nicht mehr gleichwahrscheinlich.
#3093492
Lesenswert?

D. I. schrieb:
> Passend zur Frauenquote:
>
> In Hinterwald will jedes Paar unbedingt ein männliches Baby. Kriegt ein
> Päärchen eine Tochter, zeugt es ein weiteres Baby. Dies wird von jedem
> Paar solange wiederholt bis ein Junge geboren wird. Wie ist die
> Geschlechterverteilung der Babys (m : w) sobald jedes Paar einen Jungen
> hat?
>
> Annahme: Mädchen oder Junge ist gleichwahrscheinlich.


Da gibt es sicher einen Trick dabei, den ich nicht sehen kann.
Denn theoretisch kann ja ein Pärchen unendlich viele Mädchen bekommen, 
praktisch so viele bis die Frau in die Menopause kommt. Aber der 
springende Punkt ist, dass die Wahrscheinlichkeit nach jeder Geburt 
wieder 50:50 ist.
Gast #3093498
Lesenswert?

Mit dem Einwand hast du im Wesentlichen auch recht, weswegen die Antwort 
streng genommen auch etwas Unschärfe besitzt ;) Aber wenn man mal von 
quasi unendlich vielen Päärchen ausgeht und so... :)

Ich präzisiere: Woran nähert sich das Geschlechterverhältnis mit 
steigender Anzahl Päärchen an?

Für die Nitpicker: Pro Geburt nur ein Kind, keine Zwillinge etc...
#3093717
Lesenswert?

Mike Mike schrieb:
> Blöde frage, wie schreibt man ohne großen Aufwand einen
> Pseudozufallsgenerator mit einstellbarer Wahrscheinlichkeit?

Was meinst Du mit einstellbarer Wahrscheinlichkeit? Die Verteilung der 
(Pseudo-)Zufallszahlen?

Näherungsweise normalverteilte Zufallszahlen (mit einstellbarem 
Mittelwert und Standardabweichung) lassen sich aus gleichverteilten 
Zufallszahlen durch Anwendung des zentralen Grenzwertsatzes, z.B. 
mittels "Zwölferregel", erzeugen:
http://de.wikipedia.org/wiki/Zw%C3%B6lferregel
#3093736
Lesenswert?

Habs etwas unpräzise formuliert.
z.B. beim Münzwurf, gibt es nur zwei Ereignisse. Wie kann ich die 
Wahrscheinlichkeit des Eintreffens eines gewissen Ereignisses 
beeinflussen.
Mein Idee wäre einfach in gewissen Intervallen die Wahrscheinlichkeit zu 
ermitteln, und dann einfach das entsprechende Ereignis zum 
"Gegensteuern" ausgeben.
#3093743
Lesenswert?

Mike Mike schrieb:
> z.B. beim Münzwurf, gibt es nur zwei Ereignisse. Wie kann ich die
> Wahrscheinlichkeit des Eintreffens eines gewissen Ereignisses
> beeinflussen.

Indem Du einen beliebigen Zufallszahlengenerator, der geichverteilte 
Zahlen im Intervall [0,1] liefert, verwendest und eine gewünschte 
Schwelle vorgibst, (z.B. 0.8) unterhalb derer alle Zufalsszahlen als 
"Kopf" gewertet werden.
Moderator #3093981
Lesenswert?

Ist die Wahrscheinlichkeit, bei einer Geburt einen Jungen zu bekommen,
gleich P (und entsprechend die Wahrscheinlichkeit für ein Mädchen 1-P),
dann ist das zu erwartende Verhältnis zwischen Jungen und Mädchen
natürlich

  P : (1-P)

Da jedes einzelne Kind unabhängig von allen anderen "gewürfelt" wird,
ändert an diesem Ergebnis auch eine – wie auch immer geartete –
"Zeugungsstrategie" überhaupt nichts. Zum Glück!

Ich gebe aber zu, dass ich auch erst hereingefallen bin und die Aufgabe
für beliebiges P mittels geometrischer Reihen zu Ende gerechnet habe
(Immerhin habe ich mir dabei die Anforderung auferlegt, das Ganze ohne
Computer, Papier und Bleistift, sondern im Kopf zu rechnen :)).

Man hätte aber eigentlich anders vorgehen müssen:

Wenn D. I. so eine Aufgabe stellt, dann gibt es nur zwei Möglichkeiten:

1. Die Aufgabe ist schwer und nur mit großer Anstrengung zu knacken.

2. Die Aufgabe ist eine Fangfrage und mit dem richtigen Kniff ganz
   leicht zu lösen.

Alternative 1 scheidet aus, weil die Aufgabe nur mit etwas Mittelstufen-
mathematik geradlinig gelöst werden kann. Also bleibt Alternative 2 ;-)
Gast #3094097
Lesenswert?

Yalu X. schrieb:
> Man hätte aber eigentlich anders vorgehen müssen:
>
> Wenn D. I. so eine Aufgabe stellt, dann gibt es nur zwei Möglichkeiten:
>
> 1. Die Aufgabe ist schwer und nur mit großer Anstrengung zu knacken.
>
> 2. Die Aufgabe ist eine Fangfrage und mit dem richtigen Kniff ganz
>    leicht zu lösen.
>
> Alternative 1 scheidet aus, weil die Aufgabe nur mit etwas Mittelstufen-
> mathematik geradlinig gelöst werden kann. Also bleibt Alternative 2 ;-)

Second Level Thinking :)

Mal sehen, für heute Abend habe ich evtl. auch noch eines, aber da 
knobel ich grad selbst noch dran rum grübel aber jetz erstmal ab zur 
Arbeit
#3094191
Lesenswert?

Ich hab es empirisch überschlagen und dadurch schon gelöst, denn nach 3 
Zeilen sieht man schnell ein, wo es endet (ganz ohne 
Grenzwertbetrachtung, Zufallsgenerator und Kombinatorik / 
Wahrscheinlichkeitsrechnung :-), egal ob gleich oder ungleich 
wahrscheinlich:

angenommen, man hat 200 Paare

1. Wurf (200 Paare) 100j 100m
2. Wurf (100 Paare)  50j  50m
3. Wurf ( 50 Paare)  25j  25m
...
...
Moderator (Firma: Titel) Persönliche Seite #3094228
Lesenswert?

Karl Heinz Buchegger schrieb:
> Das sagt auch meine Simulation.
Meine auch. Und falls einer fragt, wie man das machen könnte hier eine 
rekursive Lösung, bei den jedes Pärchen solange weitermacht, bis es 
einen Jungen hat:
http://codepad.org/6bVGRPf1
1
#include <stdio.h>
2
#include <stdlib.h>
3
#include <time.h>
4

5
int  m = 0;  // maedels
6
int  j = 0;  // jungs
7
int mw = 50; // verhaeltnis
8

9
void getaboy(int x) {
10
   if (!--x) return; // depth limit -- > zu alt fuer weitere kinder ;-)
11
   if (rand()%100 >= mw) {
12
      j++;
13
      return;
14
   } 
15
   else {
16
      m++;
17
      getaboy(x);
18
   }
19
}
20

21
int main(void) {
22
   int i;
23
   time_t t;
24
   time(&t);
25
   srand((unsigned int)t);        
26

27
   // paerchen
28
   for (i=0; i<1000000; i++)  // 1000000 paerchen
29
      getaboy(1000);          // max. 1000 kinder pro paerchen
30

31
   printf("jungs: %d, maedels: %d",j,m);
32

33
   return 0;
34
}
Allerdings ist die Zufallszahl (mit %100 auf einen short) etwas 
unsymmetrisch, da könnte man noch was tun. Und das Limit kann man auch 
weglassen, wenn man keine Sorge um seinen Stack hat...  ;-)
Moderator #3094268
Lesenswert?

Lothar Miller schrieb:
> Und das Limit kann man auch weglassen, wenn man keine Sorge um seinen
> Stack hat...  ;-)

Mit GCC und -O2 ist diese Sorge unbegründet, da der Compiler Endrekur-
sionen automatisch auflöst. Man kann das aber auch manuell machen, indem
man die Funktion getaboy einfach folgendermaßen umschreibt:
1
void getaboy(int x) {
2
  while (--x) {
3
    if (rand()%100 >= mw) {
4
      j++;
5
      break;
6
    }
7
    m++;
8
  }
9
}

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren