Hilfe bei Informatikhausaufgabe?
Hallo Leute,
ich habe habe Probleme bei meiner Informatikhausaufgabe, ich soll ein Programm zur Bewertung der Fairness eines Würfelprogramms schreiben, aber es will nicht so wie es will. Vielleicht kann mir ja Jemand helfen.
Hier der Code:
---------------------------------------------------------
from random import randint, seed
seed()
#Verarbeitung
augenzahl = randint(1, 6)
zaehler1 = 1
zaehler2 = 0
zaehler3 = 0
zaehler4 = 0
zaehler5 = 0
zaehler6 = 0
while augenzahl != 6:
augenzahl = randint(1, 6)
zaehler1 = zaehler1 + 1
if augenzahl == 1
zaehler2 = zaehler2 + 1
elif augenzahl == 2
zaehler3 = zaehler3 + 1
elif augenzahl == 3
zaehler4 = zaehler4 + 1
elif augenzahl == 4
zaehler5 = zaehler5 + 1
elif augenzahl == 5
zaehler6 = zaehler6 + 1
#Ausgabe
print('Anzahl der Versuche bis zur Sechs: ', zaehler1)
print('Anzahl der Einsen: ', zaehler2)
print('Anzahl der Zweien: ', zaehler3)
print('Anzahl der Dreien: ', zaehler4)
print('Anzahl der Vieren: ', zaehler5)
print('Anzahl der Fünfen: ', zaehler6)
---------------------------------------------------------
1 Antwort
Zum einen gibt es Syntaxfehler:
- Das erste elif ist nicht korrekt eingerückt.
- Am Ende jedes if/elif-Kopfs fehlt ein Doppelpunkt. Vergleiche mit dem Kopf deiner Schleife, denn dort hast du es richtig gemacht.
Zum anderen sehe ich einen Logikfehler:
Du gibst dem Zähler eine Eins als Startwert, dabei fand noch gar keine Auswertung statt, ob es sich stattdessen um eine Zahl zwischen 1-5 (beide Grenzen inklusiv) gehandelt hat.
Zwei Lösungswege sehe ich hierfür:
a) Du ergänzt noch eine komplette Auswertung vor der Schleife.
b) Du setzt den Zähler auf 0 und gibst der Augenzahl einen Startwert, der garantiert nicht zwischen 1 und 6 (beide Grenzen inklusiv) liegt. Z.B. -1.