Python 5.2 : Exercice : demander nombre
Voici un exercice pour mettre en pratique les fonctions et les paramètres. L'objectif est d'écrire une fonction demander_nombre qui prend deux paramètres : nombre_min et nombre_max. À l'intérieur, elle demande à l'utilisateur d'entrer un nombre magique compris dans cet intervalle, puis retourne la valeur saisie convertie en entier.
Énoncé et correction
Avant la correction, prenez le temps d'essayer par vous-même. Vous devez utiliser les paramètres nombre_min et nombre_max dans le message affiché à l'utilisateur, et retourner un entier (pas une chaîne). Voici la solution attendue :
def demander_nombre(nombre_min, nombre_max):
reponse_str = input(
"Quel est le nombre magique entre %s et %s ? "
% (nombre_min, nombre_max)
)
reponse = int(reponse_str)
return reponse
resultat = demander_nombre(1, 10)
print(resultat)
La concaténation utilise ici l'opérateur de formatage %s, qui sera remplacé par les valeurs passées dans le tuple à droite. C'est une syntaxe historique mais toujours valide en Python. On pourrait aussi utiliser une f-string moderne : f"Quel est le nombre magique entre {nombre_min} et {nombre_max} ?". Le résultat est identique, mais l'écriture est plus lisible.
Les points pratiques de cet exercice :
- Définir une fonction avec deux paramètres typés implicitement
- Utiliser les paramètres dans le message d'invite
- Convertir la réponse en entier avec int()
- Retourner la valeur via return
- Tester la fonction en l'appelant avec des bornes concrètes
L'objectif de convertir la réponse en entier est de pouvoir gérer plus facilement les conditions par la suite, quand on voudra vérifier que la réponse est bien dans l'intervalle attendu. Pour le moment, on accepte n'importe quel nombre. Dans la suite, nous ajouterons les contraintes nécessaires. À très bientôt pour la prochaine vidéo sur les conditions à appliquer.