MINT üben

Fehlermeldungen verstehen

Zwei Sachaufgaben zu Fehlermeldungen und logischen Fehlern mit Hinweisen und Erwartungshorizont.

Dein Fortschritt:
0 / 0 Aufgaben
1

Die Fehlermeldung beim Pausenverkauf

AFB I–II

Die Schülerfirma verkauft Brezeln für 80 Cent, pro Bestellung gibt es 10 Cent Rabatt. Nach der Eingabe 3 erscheint eine Fehlermeldung:

# Pausenverkaufpreis = 80anzahl = input("Wie viele Brezeln? ")rabatt = 10summe = anzahl * preis - rabattprint("Zu zahlen:", summe, "Cent")
Wie viele Brezeln? 3
Traceback (most recent call last):
  File "pause.py", line 5, in <module>
    summe = anzahl * preis - rabatt
TypeError: unsupported operand type(s) for -: 'str' and 'int'
  1. Entnimm der Fehlermeldung die Fehlerart, die Zeilennummer und die Beschreibung.
  2. Erkläre die Ursache des Fehlers. Gehe dabei darauf ein, warum Python anzahl * preis noch ohne Meldung ausrechnet.
  3. Gib eine korrigierte Zeile 3 an und die Ausgabe, die sich dann bei der Eingabe 3 ergibt.

Hinweise

Hinweis zu Aufgabe a)
Lies die Meldung von unten nach oben.
Hinweis zu Aufgabe b)
Welchen Typ hat anzahl? Was ergibt "ab" * 2?
Hinweis zu Aufgabe c)
Wandle die Eingabe gleich beim Einlesen um.