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.

En résumé

Cet exercice Python apprend à créer une fonction qui demande à l'utilisateur de saisir un nombre magique dans l'intervalle 1-10 en utilisant `input()`. L'exercice renforce la compréhension de la fonction `input()` et de la conversion de chaîne de caractères en entier avec `int()`. Le script demande le nombre à l'utilisateur, le convertit et le retourne pour servir de base aux vérifications de conditions.

Points clés

  • Utiliser `input()` pour demander une saisie utilisateur
  • Convertir la réponse en entier avec `int(input(...))` pour traiter des nombres
  • Retourner la valeur convertie pour l'utiliser dans des vérifications de conditions
  • Comprendre le flux : demander → convertir → retourner
  • Préparer les données pour les conditions qui suivront dans les leçons ultérieures

Questions fréquentes

Pourquoi convertir la réponse avec int() ?

Parce que `input()` retourne toujours un texte (string). Pour comparer ou utiliser le nombre dans des calculs, il faut le convertir en entier avec `int()`.

Quel est l'intervalle du nombre magique ?

Le nombre magique doit être compris entre 1 et 10 inclus.

Comment cette fonction prépare-t-elle les leçons suivantes ?

En convertissant correctement l'entrée utilisateur en nombre entier, on peut ensuite ajouter des conditions pour vérifier si le nombre deviné est correct.