This is an old revision of the document!
Simulation
Lernjournal soll geführt werden. Kann in Prüfung verwendet werden!
Aufgaben
Aufgabe 1
Schreiben Sie ein Programm, welches 20 Zufallszahlen zwischen 1 und 1000 erzeugt und diese ausgibt.
Aufgabe 2
Mit welcher Wahrscheinlichkeit treten bei zehnmal Würfeln alle Zahlen mindestens einmal auf?
Hinweis für die Lösung:
Aufgabe 3.1
Beim Geburtstagsparadoxon geht es darum, die Wahrscheinlichkeit zu bestimmen, dass in einer Gruppe von n Personen mindestens zwei Personen am gleichen Tag Geburtstag haben. Man nennt es Paradoxon, da intuitiv die Wahrscheinlichkeit falsch geschätzt wird.
Selbstverständlich ist es möglich, diese Wahrscheinlichkeit zu exakt zu berechnen (in der Mathematik, siehe dazu https://de.wikipedia.org/wiki/Geburtstagsparadoxon. Wir wollen hier aber versuchen, diese Wahrscheinlichkeiten mit Simulationen zu bestimmen.
Schreibe eine Funktion (zb. «isBirthdayClash(nrOfPersons)») welche für eine Anzahl von Personen testet, ob es mindestens zwei Personen gibt mit dem gleichen Geburtstag. Die Funktion soll das für eine Menge von Personen machen und entweder 0 oder 1 (für einen «clash») zurückgeben.
Aufgabe 3.2
Schreibe eine zweite Funktion (zb. «percentageClash(nrOfPersons, loops)), welche die Funktion von Teil1 «loops mal» benutzt und so die Wahrscheinlichkeit simuliert. Rückgabewert soll ein float sein (Wahrscheinlichkeit zwischen 0 und 1).
Aufgabe 3.3
Erweitere dein Programm, indem du für simulierten Wahrscheinlichkeiten bis 0.99 mit den Anzahl Personen ausgibst. Bei welcher Personenanzahl ist die Wahrscheinlichkeit 0.5. Wann erreicht sie 0.99?