Menu
Coddy logo textTech

Rückblick - Sichere Division

Teil des Abschnitts Logik & Ablauf der Dart-Journey von Coddy — Lektion 43 von 65.

challenge icon

Aufgabe

Einfach

Erstellen Sie ein Programm, das einen sicheren Divisionsrechner unter Verwendung von Ausnahmebehandlung implementiert. Ihr Programm sollte Fehler bei der Division durch Null elegant handhaben und den Benutzern eine klare Rückmeldung geben, wenn Fehler auftreten.

  1. Lesen Sie eine String-Eingabe ein, die die erste Zahl (Dividend) darstellt
  2. Lesen Sie eine String-Eingabe ein, die die zweite Zahl (Divisor) darstellt
  3. Erstellen Sie eine Funktion namens safeDivision, die zwei double-Parameter entgegennimmt und ein double-Ergebnis zurückgibt
  4. Die Funktion sollte einen try-catch-Block verwenden, um potenzielle Divisionsfehler zu behandeln:
    • Im try-Block: Prüfen Sie, ob der Divisor Null ist, und lösen Sie eine Exception mit der Nachricht "Division by zero is not allowed" aus, falls dies zutrifft, andernfalls führen Sie die Division aus
    • Im catch-Block: Behandeln Sie die Exception und geben Sie 0.0 als sicheren Standardwert zurück
  5. Konvertieren Sie die Eingabestrings mit double.parse() in double-Werte
  6. Rufen Sie die Funktion safeDivision mit den konvertierten Werten auf
  7. Zeigen Sie die Ergebnisse im unten gezeigten exakten Format an

Wenn die Eingaben beispielsweise "10.0" und "2.0" sind, sollte Ihr Programm Folgendes ausgeben:

Safe Division Calculator
========================
First number: 10.0
Second number: 2.0
Performing division...
Result: 5.0
Operation completed successfully

Wenn die Eingaben "15.0" und "0.0" sind, sollte Ihr Programm Folgendes ausgeben:

Safe Division Calculator
========================
First number: 15.0
Second number: 0.0
Performing division...
Error: Division by zero is not allowed
Using safe default value: 0.0
Operation completed with error handling

Wenn die Eingaben "7.5" und "2.5" sind, sollte Ihr Programm Folgendes ausgeben:

Safe Division Calculator
========================
First number: 7.5
Second number: 2.5
Performing division...
Result: 3.0
Operation completed successfully

Ihr Programm muss die Funktion safeDivision implementieren, die einen try-catch-Block verwendet, um die Division durch Null zu behandeln. Prüfen Sie im try-Block, ob der Divisor gleich 0.0 ist, und verwenden Sie das Schlüsselwort throw, um manuell eine Exception auszulösen, falls dies zutrifft. Geben Sie im catch-Block die Fehlermeldung aus und geben Sie 0.0 als sicheren Ersatzwert zurück. Das Hauptprogramm sollte diese Funktion aufrufen und je nachdem, ob ein Fehler aufgetreten ist, unterschiedliche Abschlussmeldungen anzeigen.

Probier es selbst

import 'dart:io';

// TODO: Erstellen Sie hier die Funktion safeDivision

void main() {
  // Eingabe lesen
  String? firstInput = stdin.readLineSync();
  String? secondInput = stdin.readLineSync();
  
  // Strings in Double umwandeln
  double firstNumber = double.parse(firstInput!);
  double secondNumber = double.parse(secondInput!);
  
  // Kopfzeile anzeigen
  print("Safe Division Calculator");
  print("========================");
  print("First number: $firstNumber");
  print("Second number: $secondNumber");
  print("Performing division...");
  
  // TODO: Rufen Sie die Funktion safeDivision auf und verarbeiten Sie das Ergebnis
  // Denken Sie daran zu prüfen, ob ein Fehler aufgetreten ist, um die entsprechende Abschlussmeldung anzuzeigen
  
}

Alle Lektionen in Logik & Ablauf