Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
lehrkraefte:blc:informatik:glf4-20:simulation [2021/03/26 09:59] michael.greminger |
lehrkraefte:blc:informatik:glf4-20:simulation [2021/03/26 15:21] michael.greminger |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Simulation ====== | ====== Simulation ====== | ||
+ | Lernjournal soll geführt werden. Kann in Prüfung verwendet werden! | ||
+ | |||
{{lehrkraefte: | {{lehrkraefte: | ||
Line 7: | Line 9: | ||
<hidden Lösungsvorschlag> | <hidden Lösungsvorschlag> | ||
<code python> | <code python> | ||
- | kommt bald... | + | from random import randint |
+ | |||
+ | for i in range(20): | ||
+ | print randint(1, | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | === Aufgabe 1.5 === | ||
+ | Erweitern Sie das Programm von Aufgabe 1. Das Programm soll 400 Zufallszahlen (zwischen 1 und 1000) in eine Liste einfügen (mit einer ersten Schleife). | ||
+ | |||
+ | Mit einer zweiten Schleife soll anschliessend die grösste der 400 Zufallszahlen bestimmt und ausgegeben werden. | ||
+ | |||
+ | Hinweis: Mit folgendem Code kann durch eine Liste " | ||
+ | <code python> | ||
+ | for zahl in meineListe: | ||
+ | print zahl | ||
+ | </ | ||
+ | |||
+ | <hidden Lösungsvorschlag> | ||
+ | <code python> | ||
+ | from random import randint | ||
+ | |||
+ | numbers=[] | ||
+ | for i in range(400): | ||
+ | numbers.append(randint(1, | ||
+ | |||
+ | largest = 0 | ||
+ | for i in numbers: | ||
+ | if i > largest: | ||
+ | largest = i | ||
+ | |||
+ | print largest | ||
</ | </ | ||
</ | </ | ||
Line 13: | Line 46: | ||
=== Aufgabe 2 === | === Aufgabe 2 === | ||
Mit welcher Wahrscheinlichkeit treten bei zehnmal Würfeln alle Zahlen mindestens einmal auf? | Mit welcher Wahrscheinlichkeit treten bei zehnmal Würfeln alle Zahlen mindestens einmal auf? | ||
- | Hinweis für die Lösung: | ||
+ | Hinweis für die Lösung: Würfeln Sie eine Zahl z. Anschliessend prüfen Sie, ob die die Zahl z noch nicht gewürfelt wurde (ist sie in meiner Liste). Wenn ja (dh noch nicht gewürfelt), | ||
+ | |||
+ | <hidden Lösungsvorschlag> | ||
+ | <code python> | ||
+ | kommt bald... | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | === 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:// | ||
+ | |||
+ | Schreiben Sie 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. | ||
+ | <hidden Lösungsvorschlag> | ||
+ | <code python> | ||
+ | kommt bald... | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | === Aufgabe 3.2 === | ||
+ | Schreiben Sie eine zweite Funktion (zb. «percentageClash(nrOfPersons, | ||
+ | <hidden Lösungsvorschlag> | ||
+ | <code python> | ||
+ | kommt bald... | ||
+ | </ | ||
+ | </ | ||
+ | === Aufgabe 3.3 === | ||
+ | Erweitern Sie ihr Programm, indem die simulierten Wahrscheinlichkeiten bis 0.99 mit den Anzahl Personen ausgibst. Bei welcher Personenanzahl ist die Wahrscheinlichkeit 0.5. Wann erreicht sie 0.99? | ||
<hidden Lösungsvorschlag> | <hidden Lösungsvorschlag> | ||
<code python> | <code python> |