Contenu principal
Chapitre 4 · La boucle for › Leçon 4 sur 9

Décollage imminent

Dans cette leçon tu vas simuler le décompte avant le lancement d'une fusée.

  1. 1

    Écris une boucle for qui affiche successivement les nombres de la séquence 5, 4, 3, 2, et 1 inclus.

    Solution

    Il nous faut un pas négatif pour le décompte. Donc le troisième argument de range est -1. De plus, pour que la séquence aille de 5 à 1 inclus, le premier argument est 5 et le deuxième est 0. Il faut donc appeler range(5, 0, -1)

    Ensuite pour chaque valeur i de cette séquence, on affiche i dans la console à l'aide de print

    for i in range(5, 0, -1):
        print(i)
  2. 2

    Dans les leçons précédentes nous avons utilisé la variable i dans les boucles for comme for i in range(10). Mais tu peux utiliser le nom de variable que tu veux à cet endroit : i, n, k, prix etc. En général on adapte suivant le contexte pour rendre le code plus lisible.

    Change le nom de la variable de la boucle for et utilise une variable nommée seconde à la place pour faire référence au temps qu'il reste. Ce changement implique plusieurs modifications.

    Solution

    Il faut remplacer i par seconde partout, donc le print(i) devient print(seconde)

    for seconde in range(5, 0, -1):
        print(seconde)
  3. 3

    On va modifier le print pour afficher des messages sur le modèle suivant :

    Décollage dans ****

    Utilise une f-string pour remplacer les astérisques par la bonne valeur. Les messages doit correspondre au décompte :

    Décollage dans 5
    Décollage dans 4
    Décollage dans 3
    Décollage dans 2
    Décollage dans 1
    
    Solution

    On utilise une f-string qui référence la variable seconde. À chaque itération de la boucle for la valeur de seconde change et le message sera différent.

    for seconde in range(5, 0, -1):
        print(f"Décollage dans {seconde}")
  4. 4

    Pour finir affiche le message Décollage ! lorsque le décompte est terminé. Ce message ne doit apparaître qu'une seule fois.

    Solution

    Il faut utiliser une dernière instruction print après la boucle for pour que le message final n'apparaisse qu'une fois le décompte terminé.

    En plaçant le print à la ligne 4 sans indentation, le message ne fait pas parti de la boucle for.

    for seconde in range(5, 0, -1):
        print(f"Décollage dans {seconde}")
    
    print("Décollage !")

Chargement...

Collecte des fichiers...

>>>