Python 5.3 : Exercice : condition

Cet exercice porte sur les conditions. Maintenant que nous savons demander un nombre à l'utilisateur, nous allons comparer ce nombre au nombre magique et afficher trois messages différents selon le résultat : « bravo, vous avez gagné », « le nombre magique est plus grand », ou « le nombre magique est plus petit ». L'utilisateur n'a qu'une seule chance pour trouver.

Structure if / elif / else

Le principe est de comparer le nombre saisi avec le nombre magique, en distinguant trois cas avec une chaîne if / elif / else. Voici la correction :

nombre_magique = 7
							nombre = demander_nombre(1, 10)
							
							if nombre == nombre_magique:
							    print("Bravo, vous avez gagné")
							elif nombre > nombre_magique:
							    print("Le nombre magique est plus petit")
							else:
							    print("Le nombre magique est plus grand")

L'ordre des branches a son importance pour la lisibilité. Le premier test if vérifie le cas idéal (le joueur a trouvé). Le elif gère le cas où la réponse est supérieure au nombre magique : dans ce cas, le nombre magique est forcément plus petit. Enfin, le else couvre le dernier cas restant : la réponse est inférieure, donc le nombre magique est plus grand.

Les règles à connaître sur if / elif / else :

  • Une seule branche est exécutée, jamais plusieurs
  • Python évalue les conditions de haut en bas
  • Dès qu'une condition est vraie, la branche correspondante est exécutée
  • else couvre tous les cas non traités par les if et elif
  • elif est obligatoire si on veut tester plusieurs conditions exclusives

Tester ce code avec différentes valeurs (3, 7, 9) permet de vérifier que les trois branches fonctionnent correctement. Bien sûr, dans la version finale du jeu, on voudra donner plusieurs essais à l'utilisateur. Mais avant cela, il faut maîtriser la base des conditions. À très bientôt pour la prochaine vidéo sur l'utilisation d'une boucle pour gérer plusieurs essais.