Menu
Coddy logo textTech

Récapitulatif - Division sécurisée

Fait partie de la section Logique & Flux du Journey Dart de Coddy — leçon 43 sur 65.

challenge icon

Défi

Facile

Créez un programme qui implémente un calculateur de division sécurisée en utilisant la gestion des exceptions. Votre programme doit gérer les erreurs de division par zéro de manière élégante et fournir un retour clair aux utilisateurs lorsque des erreurs surviennent.

  1. Lisez une entrée de type chaîne de caractères représentant le premier nombre (dividende)
  2. Lisez une entrée de type chaîne de caractères représentant le deuxième nombre (diviseur)
  3. Créez une fonction appelée safeDivision qui prend deux paramètres de type double et retourne un résultat de type double
  4. La fonction doit utiliser un bloc try-catch pour gérer les erreurs de division potentielles :
    • Dans le bloc try : Vérifiez si le diviseur est zéro et lancez une exception avec le message "Division by zero is not allowed" si c'est le cas, sinon effectuez la division
    • Dans le bloc catch : Gérez l'exception et retournez 0.0 comme valeur par défaut sécurisée
  5. Convertissez les chaînes d'entrée en valeurs de type double en utilisant double.parse()
  6. Appelez la fonction safeDivision avec les valeurs converties
  7. Affichez les résultats dans le format exact indiqué ci-dessous

Par exemple, si les entrées sont "10.0" et "2.0", votre programme doit afficher :

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

Si les entrées sont "15.0" et "0.0", votre programme doit afficher :

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

Si les entrées sont "7.5" et "2.5", votre programme doit afficher :

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

Votre programme doit implémenter la fonction safeDivision qui utilise un bloc try-catch pour gérer la division par zéro. Dans le bloc try, vérifiez si le diviseur est égal à 0.0 et utilisez le mot-clé throw pour déclencher manuellement une exception si c'est vrai. Dans le bloc catch, affichez le message d'erreur et retournez 0.0 comme valeur de repli sécurisée. Le programme principal doit appeler cette fonction et afficher différents messages de fin selon qu'une erreur s'est produite ou non.

Essayez vous-même

import 'dart:io';

// TODO: Créer la fonction safeDivision ici

void main() {
  // Lire l'entrée
  String? firstInput = stdin.readLineSync();
  String? secondInput = stdin.readLineSync();
  
  // Convertir les chaînes en double
  double firstNumber = double.parse(firstInput!);
  double secondNumber = double.parse(secondInput!);
  
  // Afficher l'en-tête
  print("Safe Division Calculator");
  print("========================");
  print("First number: $firstNumber");
  print("Second number: $secondNumber");
  print("Performing division...");
  
  // TODO: Appeler la fonction safeDivision et gérer le résultat
  // N'oubliez pas de vérifier si une erreur s'est produite pour afficher le message de fin approprié
  
}

Toutes les leçons de Logique & Flux