Aller au contenu

Corrigés 1 : Gestion des exceptions et validation d’entrées


Exercice 1 : Prédire la sortie

try:
    nombre = int("vingt")
except ValueError:
    print("Erreur : Ce n'est pas un nombre.")
# Résultat : "Erreur : Ce n'est pas un nombre."

Exercice 2 : Validation d’un entier positif

def demander_entier_positif():
    valeur_valide = False
    while not valeur_valide:
        try:
            entier = int(input("Entrez un entier positif : "))
            if entier >= 0:
                valeur_valide = True
            else:
                print("Erreur : L'entier doit être positif.")
        except ValueError:
            print("Erreur : Vous devez entrer un nombre entier.")
    return entier


entier = demander_entier_positif()
print(f"Entier positif valide : {entier}.")

Exercice 3 : Validation d’une note

def demander_note():
    note_valide = False
    while not note_valide:
        try:
            note = float(input("Entrez une note (entre 0 et 100) : "))
            if 0 <= note <= 100:
                note_valide = True
            else:
                print("Erreur : La note doit être entre 0 et 100.")
        except ValueError:
            print("Erreur : Vous devez entrer un nombre.")
    return note


note = demander_note()
print(f"Note valide : {note}.")

Exercice 4 : Validation d’un choix de menu

def demander_choix():
    choix_valide = False
    while not choix_valide:
        try:
            choix = int(input("Choisissez une option (1, 2, 3 ou 4) : "))
            if 1 <= choix <= 4:
                choix_valide = True
            else:
                print("Erreur : Le choix doit être entre 1 et 4.")
        except ValueError:
            print("Erreur : Vous devez entrer un nombre entier.")
    return choix


choix = demander_choix()
print(f"Choix valide : {choix}.")

Exercice 5 : Validation d’une année

from datetime import datetime


def demander_annee():
    annee_valide = False
    annee_actuelle = datetime.now().year
    while not annee_valide:
        try:
            annee = int(input(f"Entrez une année (entre 1900 et {annee_actuelle}) : "))
            if 1900 <= annee <= annee_actuelle:
                annee_valide = True
            else:
                print(f"Erreur : L'année doit être entre 1900 et {annee_actuelle}.")
        except ValueError:
            print("Erreur : Vous devez entrer un nombre entier.")
    return annee


annee = demander_annee()
print(f"Année valide : {annee}.")

Exercice 6 : Division sécurisée

def division_securisee():
    division_valide = False
    while not division_valide:
        try:
            numerateur = float(input("Entrez le numérateur : "))
            denominateur = float(input("Entrez le dénominateur : "))
            resultat = numerateur / denominateur
            division_valide = True
        except ValueError:
            print("Erreur : Vous devez entrer un nombre.")
        except ZeroDivisionError:
            print("Erreur : Le dénominateur ne peut pas être zéro.")
    return resultat


resultat = division_securisee()
print(f"Résultat de la division : {resultat}.")


Utilisation de l’IA

Page rédigée en partie avec l’aide d’un assistant IA, principalement à l’aide de Perplexity AI. L’IA a été utilisée pour générer des explications, des exemples et/ou des suggestions de structure. Toutes les informations ont été vérifiées, éditées et complétées par l’auteur.