Schreibe ein Python-Programm für die Kasse eines Pausenkiosks. Du gibst die Preise der gekauften Artikel nacheinander ein. Am Ende zeigt die Kasse den Gesamtpreis und die Anzahl der Artikel an.
Ziel: Übe Ein- und Ausgabe, Verzweigungen und eine Schleife. Verwende deinen bisherigen Python-Editor. Plane etwa 15–20 Minuten ein.
So soll dein Programm arbeiten
- Zu Beginn sind der Gesamtpreis und die Artikelanzahl jeweils 0.
- Frage nach einem Artikelpreis in Cent. Beispielsweise bedeutet die Eingabe
150einen Preis von 150 Cent, also 1,50 Euro. Für diese Aufgabe werden nur ganze Zahlen eingegeben. - Ist der Preis größer als 0, addiere ihn zum Gesamtpreis und erhöhe die Artikelanzahl um 1.
- Bei einer negativen Zahl erscheint „Ungültiger Preis.“ Gesamtpreis und Artikelanzahl bleiben unverändert. Frage anschließend nach dem nächsten Preis.
- Bei der Eingabe
0endet der Einkauf. Die 0 zählt nicht als Artikel und wird nicht zum Gesamtpreis addiert. Frage danach nicht mehr nach Preisen. - Gib zum Schluss den Gesamtpreis in Cent und die Anzahl der gültig erfassten Artikel aus. Auch wenn sofort 0 eingegeben wird, werden beide Ergebnisse angezeigt.
Du brauchst dafür nur Variablen, Rechen- und Vergleichsoperatoren, input(), int(), print(), if/elif/else und eine while-Schleife. Funktionen oder Listen brauchst du nicht.
Tipp: Verwende je eine Variable für die Summe und die Anzahl. Überlege, welche Eingabe die Schleife beenden soll. Achte darauf, dass auch nach einem ungültigen Preis eine neue Eingabe möglich ist.
Teste dein Programm
Starte es für jeden Test neu. Gib die Zahlen einzeln nacheinander ein:
| Eingaben nacheinander | Erwartetes Verhalten |
|---|---|
| 150, 80, 120, 0 | Gesamtpreis: 350 Cent; Artikelanzahl: 3. |
| 200, 200, 0 | Gesamtpreis: 400 Cent; Artikelanzahl: 2. Gleiche Preise zählen als einzelne Artikel. |
| -50, 100, 0 | Die -50 wird mit „Ungültiger Preis.“ abgelehnt. Gesamtpreis: 100 Cent; Artikelanzahl: 1. |
| 0 | Gesamtpreis: 0 Cent; Artikelanzahl: 0. Es folgt keine weitere Preisabfrage. |
Mindestanforderungen
- ☐ Mein Programm fragt mit einer
while-Schleife wiederholt nach Artikelpreisen. - ☐ Positive Preise werden addiert und jeweils als ein Artikel gezählt.
- ☐ Negative Preise werden mit einer Meldung abgelehnt und weder addiert noch gezählt.
- ☐ Die Eingabe 0 beendet den Einkauf und zählt nicht als Artikel.
- ☐ Am Ende erscheinen der richtige Gesamtpreis in Cent und die richtige Artikelanzahl.
- ☐ Ich habe alle vier Testfälle geprüft.
Speichere dein Programm als aufgabe8_pausenkiosk_kasse.py. Dein Ergebnis ist die gespeicherte, getestete Python-Datei.
Freiwillige Erweiterung: Bezahlen und Rückgeld
Frage nach dem Einkauf nach dem Zahlbetrag in Cent. Ist er kleiner als der Gesamtpreis, gib „Der Betrag reicht nicht.“ aus und frage erneut nach dem vollständigen Zahlbetrag. Die Zahlungsversuche werden nicht addiert.
Sobald der Betrag ausreicht, gib das Rückgeld in Cent aus. Bei passender Zahlung erscheint „Kein Rückgeld.“ Bei einem Gesamtpreis von 350 Cent ergeben 500 Cent Zahlung also 150 Cent Rückgeld. Teste auch 350 Cent als passende Zahlung sowie zuerst 300 und danach 500 Cent als zwei Zahlungsversuche.
