Menu
Coddy logo textTech

Zusammenfassung - Bankkonto-Manager

Teil des Abschnitts Objektorientierte Programmierung der C#-Journey von Coddy — Lektion 18 von 70.

challenge icon

Aufgabe

Einfach

Lassen Sie uns ein vollständiges Bankkonten-Verwaltungssystem erstellen, das alles zusammenführt, was Sie über Klassenarchitektur gelernt haben. Sie werden eine BankAccount-Klasse erstellen, die ordnungsgemäß zwischen Instanzdaten (einzigartig für jedes Konto) und statischen Daten (gemeinsam für alle Konten genutzt) unterscheidet, während Validierungen verwendet werden, um die Konten in einem gültigen Zustand zu halten.

Sie werden zwei Dateien erstellen, um Ihren Code zu organisieren:

  • BankAccount.cs: Definieren Sie eine BankAccount-Klasse im Namespace Banking. Ihr Konto sollte Folgendes enthalten:
    • Ein const-Feld MinimumBalance, das auf 100 gesetzt ist – das Mindestguthaben, das alle Konten beibehalten müssen
    • Ein static-Feld InterestRate (decimal), das bei 0.03m beginnt – gemeinsam von allen Konten genutzt
    • Ein static-Feld TotalAccounts (int), das verfolgt, wie viele Konten existieren
    • Ein readonly-Feld AccountNumber (string) – wird einmal bei der Erstellung gesetzt und nie geändert
    • Ein privates Backing-Feld _ownerName mit einer Eigenschaft OwnerName, die beim Setzen Leerzeichen am Anfang und Ende entfernt (trims)
    • Ein privates Backing-Feld _balance mit einer Eigenschaft Balance, die verhindert, dass das Guthaben unter MinimumBalance fällt (wenn jemand versucht, es niedriger zu setzen, halten Sie es bei MinimumBalance)
    • Ein Konstruktor, der Kontonummer, Name des Eigentümers und Anfangsguthaben akzeptiert und TotalAccounts erhöht
    • Eine statische Methode SetInterestRate(decimal rate), um den gemeinsamen Zinssatz zu aktualisieren
    • Eine Methode CalculateInterest(), die das Guthaben multipliziert mit dem Zinssatz zurückgibt
  • Program.cs: Erstellen Sie in Ihrer Hauptdatei zwei Bankkonten unter Verwendung von Eingabewerten, aktualisieren Sie den Zinssatz und zeigen Sie die Kontoinformationen zusammen mit den gemeinsamen Bankdaten an.

Sie erhalten sieben Eingaben:

  • Erste Kontonummer
  • Erster Name des Eigentümers
  • Erstes Anfangsguthaben
  • Zweite Kontonummer
  • Zweiter Name des Eigentümers
  • Zweites Anfangsguthaben
  • Neuer Zinssatz (als Dezimalzahl wie 0.05)

Geben Sie die Ausgabe in diesem Format aus:

--- Bank Summary ---
Interest Rate: {InterestRate}
Minimum Balance: {MinimumBalance}
Total Accounts: {TotalAccounts}

Account: {AccountNumber}
Owner: {OwnerName}
Balance: {Balance}
Interest Earned: {interest}

Account: {AccountNumber}
Owner: {OwnerName}
Balance: {Balance}
Interest Earned: {interest}

Wenn die Eingaben beispielsweise ACC001, Alice Smith , 500, ACC002, Bob Jones, 50 und 0.05 sind, sollte die Ausgabe wie folgt aussehen:

--- Bank Summary ---
Interest Rate: 0.05
Minimum Balance: 100
Total Accounts: 2

Account: ACC001
Owner: Alice Smith
Balance: 500
Interest Earned: 25.0

Account: ACC002
Owner: Bob Jones
Balance: 100
Interest Earned: 5.0

Beachten Sie, wie Alices Name von zusätzlichen Leerzeichen befreit wird und Bobs Guthaben von 50 auf das Minimum von 100 angehoben wird. Die Zinsen werden mit dem aktualisierten Zinssatz von 0.05 berechnet, der nach der Erstellung der Konten festgelegt wurde.

Probier es selbst

using System;
using Banking;

class Program
{
    public static void Main(string[] args)
    {
        // Eingaben für das erste Konto lesen
        string accountNumber1 = Console.ReadLine();
        string ownerName1 = Console.ReadLine();
        decimal balance1 = Convert.ToDecimal(Console.ReadLine());
        
        // Eingaben für das zweite Konto lesen
        string accountNumber2 = Console.ReadLine();
        string ownerName2 = Console.ReadLine();
        decimal balance2 = Convert.ToDecimal(Console.ReadLine());
        
        // Neuen Zinssatz lesen
        decimal newRate = Convert.ToDecimal(Console.ReadLine());
        
        // TODO: Zwei BankAccount-Objekte mit den Eingabewerten erstellen
        
        // TODO: Den Zinssatz mithilfe der statischen Methode aktualisieren
        
        // TODO: Die Bankzusammenfassung im erforderlichen Format ausgeben
        // --- Bank Summary ---
        // Interest Rate: {InterestRate}
        // Minimum Balance: {MinimumBalance}
        // Total Accounts: {TotalAccounts}
        // (Leerzeile)
        // Account: {AccountNumber}
        // Owner: {OwnerName}
        // Balance: {Balance}
        // Interest Earned: {interest}
        // (Leerzeile)
        // Account: {AccountNumber}
        // Owner: {OwnerName}
        // Balance: {Balance}
        // Interest Earned: {interest}
    }
}

Alle Lektionen in Objektorientierte Programmierung