46 lines
1.2 KiB
Python
46 lines
1.2 KiB
Python
# Die Aufgabe: Der "Warenkorb-Manager" (OOP)
|
|
|
|
# Erstelle die Klasse Warenkorb. Sie muss so entworfen sein, dass sie mit dem unten stehenden main-Block funktioniert.
|
|
|
|
# Anforderungen:
|
|
|
|
# Speicherung: Intern sollen die Produkte in einer Liste gespeichert werden.
|
|
|
|
# Methoden:
|
|
|
|
# hinzufuegen(name, preis): Speichert ein Produkt.
|
|
|
|
# gesamtpreis(): Liefert die Summe aller Preise zurück.
|
|
|
|
# anzahl_artikel(): Liefert die Anzahl der Produkte zurück.
|
|
|
|
# --- HIER DIE KLASSE WARENKORB ERSTELLEN ---
|
|
|
|
|
|
class Warenkorb:
|
|
def __init__(self):
|
|
self.__waren = []
|
|
|
|
def hinzufuegen(self, produkt, preis):
|
|
self.__waren.append((produkt, preis))
|
|
|
|
def gesamtpreis(self):
|
|
return sum([preis for _, preis in self.__waren])
|
|
|
|
def anzahl_artikel(self):
|
|
return len(self.__waren)
|
|
|
|
|
|
# --- Main-Abschnitt ---
|
|
if __name__ == "__main__":
|
|
# Instanzierung
|
|
mein_korb = Warenkorb()
|
|
|
|
# Methodenaufrufe
|
|
mein_korb.hinzufuegen("Apfel", 0.99)
|
|
mein_korb.hinzufuegen("Brot", 2.50)
|
|
mein_korb.hinzufuegen("Kaffee", 5.95)
|
|
|
|
# Ausgaben
|
|
print(f"Artikel im Korb: {mein_korb.anzahl_artikel()}")
|
|
print(f"Gesamtsumme: {mein_korb.gesamtpreis():.2f}€") |