Endlich mal wieder ein Thema zu dem ich auch etwas sagen kann.
1. Die zwei While Schleifen ergeben so keinen Sinn. Ersetze sie mit einer Endlosschleife, die wir nach der Eingabe einer Zahl kleiner Null mittels "break" beenden.
2. Die Variable "note", die als Abbruchbedinung deiner Schleifen dient kommt sonst im Programm nicht vor
3. Du wandelst die Variable "wert" absichtlich mittels "int()" in eine Ganzzahl um. Deine Nachkommastellen gehen so verloren. (Beispiel: int(3.9) = 3)
4. Du musst bei Variablen auf Groß- und Kleinschreibung achten. "Wert" und "wert" sind zwei verschiedene Variablen.
5. Nach dem "while" Befehl fehlt der Doppelpunkt und in den folgenden Zeilen die Einrückungen, die bei anderen Programmiersprachen mit der geschweiften Klammer zu vergleichen wäre.
Ich würde dir ganz dringend raten die Grundlagen von Python durchzuarbeiten. Du kannst zwar meine folgende Lösung kopieren, aber es würde dich nicht wirklich weiter bringen.
Code: Alles auswählen
diagramm = "Diagramm:\n"
summe = 0
anzahl = 0
while True:
# Eingabe
try:
eingabe = float(input("Bitte Wert eingeben(<0 beendet): "))
except:
print("Bitte eine Zahl eingeben.")
continue
# Verarbeitung
if eingabe >= 0:
summe += eingabe
anzahl += 1
diagramm = diagramm + ("#" * round(eingabe)) + "\n"
else:
print()
break
# Ausgabe
print(diagramm)
try:
print("Durchschnitt:", summe / anzahl)
except:
print("Sie muessen minderstens einen Wert eingeben.")
Ja ich weiß in diesem Beispiel haben die try/except Anweisungen nichts zu suchen. Ich programmier trotzdem gern mit Ihnen.
Ich sehe gerade das meine if-Anweisung wohl auch verboten ist. Dann ist die Lösung:
Fehlerhaftes Beispiel entfernt