Menu
Coddy logo textTech

Einzahlungsmethode

Teil des Abschnitts Objektorientierte Programmierung der Lua-Journey von Coddy. Lektion 20 von 70.

challenge icon

Aufgabe

Einfach

Wir beginnen nun mit dem Projekt „Digital Bank“. Zeit, deinem neuen System Funktionalität hinzuzufügen! Da Konten jetzt mit einem Anfangsguthaben von 0 erstellt werden können, geben wir ihnen die Möglichkeit, Geld durch Einzahlungen zu erhalten.

Aufbauend auf deiner bestehenden Account-Klasse fügst du eine :deposit(amount)-Methode hinzu, die das Guthaben des Kontos um den angegebenen Betrag erhöht. Dies ist ein grundlegender Bankvorgang: Geld kommt hinzu und das Guthaben wächst!

Deine zwei Dateien:

  • Account.lua: Erweitere deine Account-Klasse, indem du eine :deposit(amount)-Methode hinzufügst. Diese Methode soll den angegebenen Betrag zu self.balance addieren. Behalte alles aus der vorherigen Lektion bei (die Klassenstruktur und den :new()-Konstruktor).
  • main.lua: Fordere dein Account-Modul an, erstelle ein Konto, führe einige Einzahlungen durch und zeige, wie sich das Guthaben verändert.

Du erhältst drei Eingaben:

  1. Betrag der ersten Einzahlung
  2. Betrag der zweiten Einzahlung
  3. Betrag der dritten Einzahlung

Erstelle in deiner Hauptdatei ein einzelnes Konto und führe die drei Einzahlungen in dieser Reihenfolge durch. Gib nach jeder Einzahlung das aktuelle Guthaben in einer neuen Zeile aus.

Wenn die Eingaben beispielsweise 100, 50 und 25 lauten, sollte die Ausgabe folgendermaßen aussehen:

100
150
175

Beachte, wie jede Einzahlung auf dem vorherigen Guthaben aufbaut: Das Konto beginnt bei 0, wächst nach der ersten Einzahlung auf 100, nach der zweiten auf 150 und nach der dritten auf 175. Deine :deposit()-Methode sorgt dafür, dass diese Ansammlung stattfindet!

Probier es selbst

-- Das Account-Modul laden
local Account = require('Account')

-- Die drei Einzahlungsbeträge einlesen
local deposit1 = tonumber(io.read())
local deposit2 = tonumber(io.read())
local deposit3 = tonumber(io.read())

-- Ein einzelnes Konto erstellen
local account = Account:new()

-- Die drei Einzahlungen durchführen und nach jeder den Kontostand ausgeben
-- TODO: deposit1 einzahlen und account.balance ausgeben

-- TODO: deposit2 einzahlen und account.balance ausgeben

-- TODO: deposit3 einzahlen und account.balance ausgeben

Alle Lektionen in Objektorientierte Programmierung

Übe selbstständig: Online-Lua-Compiler