Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lehrkraefte:blc:informatik:glf4-20:simulation:python-repe-exos [2021/03/30 11:56] Ivo Blöchliger [Einstiegsaufgaben Simulation mit Python] |
lehrkraefte:blc:informatik:glf4-20:simulation:python-repe-exos [2021/04/06 09:48] (current) Ivo Blöchliger [Histogram Wüfelsummen] |
||
---|---|---|---|
Line 7: | Line 7: | ||
# Wöchentliche Zunahme in Prozent (oder Abnahme negativ) | # Wöchentliche Zunahme in Prozent (oder Abnahme negativ) | ||
zunahme = 20 | zunahme = 20 | ||
+ | |||
+ | # 10 mal wiederholen, | ||
+ | # Aktuelle Fallzahlen ausgeben (mit print) | ||
+ | # Fallzahlen für die nächste Woche berechnen | ||
</ | </ | ||
Die Ausgabe soll wie folgt sein: | Die Ausgabe soll wie folgt sein: | ||
Line 30: | Line 34: | ||
return 0 # Muss die Summe, nicht 0 zurückgeben, | return 0 # Muss die Summe, nicht 0 zurückgeben, | ||
- | anzahlWuerfel = 4 | ||
for i in range(10): | for i in range(10): | ||
- | print(wuerfelsumme(anzahlWuerfel)) | + | print(wuerfelsumme()) |
</ | </ | ||
Line 43: | Line 46: | ||
return 0 # Muss die Summe, nicht 0 zurückgeben, | return 0 # Muss die Summe, nicht 0 zurückgeben, | ||
| | ||
+ | anzahlWuerfel = 4 | ||
for i in range(10): | for i in range(10): | ||
- | print(wuerfelsumme()) | + | print(wuerfelsumme(anzahlWuerfel)) |
</ | </ | ||
Line 53: | Line 57: | ||
=== Liste mit n Nullen === | === Liste mit n Nullen === | ||
Schreiben Sie eine Funktion, die eine Liste mit $n+1$ Nullen erzeugt und zurückgibt. | Schreiben Sie eine Funktion, die eine Liste mit $n+1$ Nullen erzeugt und zurückgibt. | ||
+ | |||
+ | Siehe auch [[lehrkraefte: | ||
<code python> | <code python> | ||
def nullen(n): | def nullen(n): | ||
Line 58: | Line 64: | ||
# Liste mit n+1 Nullen füllen | # Liste mit n+1 Nullen füllen | ||
return liste | return liste | ||
- | print(nullen(3)) | + | print(nullen(3)) |
</ | </ | ||
Line 71: | Line 77: | ||
# Liste mit Nullen erzeugen | # Liste mit Nullen erzeugen | ||
- | # Zufallsversuch durchführen und Einträge entsprechend erhöhen. | + | # Zufallsversuch |
csv = "" | csv = "" | ||
# CSV-Zeichenkette aufbauen (\n in Zeichenkette für Zeilumbruch einfügen) | # CSV-Zeichenkette aufbauen (\n in Zeichenkette für Zeilumbruch einfügen) | ||
- | datei = File.open(" | + | datei = open(" |
datei.write(csv) | datei.write(csv) | ||
datei.close() | datei.close() | ||
Line 82: | Line 88: | ||
Erzeugen Sie mit der Funktion der Aufgabe darüber eine Liste mit genügend Einträgen, damit jede mögliche Summe einen Platz in der Liste hat. | Erzeugen Sie mit der Funktion der Aufgabe darüber eine Liste mit genügend Einträgen, damit jede mögliche Summe einen Platz in der Liste hat. | ||
- | Bestimmen Sie dann '' | + | Bestimmen Sie dann '' |
+ | |||
+ | <hidden Lösungsvorschlag> | ||
+ | <code python summe-von-n-wuerfeln.py> | ||
+ | from random import randrange | ||
+ | wuerfel = 10 # Anzahl Würfel | ||
+ | versuche = 100000 | ||
+ | |||
+ | def nullen(n): | ||
+ | liste=[] | ||
+ | for i in range(n+1): # n+1 mal wiederholen | ||
+ | liste.append(0) | ||
+ | return liste | ||
+ | |||
+ | def wuerfelsumme(n): | ||
+ | summe = 0 # Das ist eine Null | ||
+ | for i in range(n): | ||
+ | summe += randrange(1, | ||
+ | return summe | ||
+ | |||
+ | # Liste zum Zählen der Vorkommnisse | ||
+ | anzahlen = nullen(6*wuerfel) | ||
+ | |||
+ | # Zufallsversuch ' | ||
+ | for i in range(versuche): | ||
+ | ergebnis = wuerfelsumme(wuerfel) | ||
+ | # Dem ' | ||
+ | anzahlen[ergebnis] += 1 | ||
+ | |||
+ | print(" | ||
+ | print(anzahlen) | ||
+ | |||
+ | csv = " | ||
+ | for summe in range(wuerfel, | ||
+ | csv += " | ||
+ | |||
+ | print(csv) | ||
+ | datei = open(" | ||
+ | datei.write(csv) | ||
+ | datei.close() | ||
+ | </ | ||
+ | </ | ||
=== Histogramm in Excel zeichnen === | === Histogramm in Excel zeichnen === | ||
- | Laden Sie die CSV-Datei in Excel, um das Histogram zu zeichnen. | + | Laden Sie die CSV-Datei in Excel, um das Histogram zu zeichnen. D.h. eine Grafik, die anzeigt, wie viel mal welche Würfelsumme gewürfelt wurde. |
====== Expert-Aufgaben ====== | ====== Expert-Aufgaben ====== |