Répétition
Durée conseillée: 15 minutes
Activité 1
Une condition est une expression qui ne peut être que vraie (True) ou fausse (False). On parle d’expression booléenne.
- Ouvrir l’EDI Thonny
- Dans la console, exécuter les instructions suivantes:À retenir
Rappel: Le signe »> est l’invite de commandes. L’interpréteur attend une instruction de l’utilisateur.
Il ne faut pas recopier ce signe.
>>> i = 0
>>> i == 2
>>> i = i + 1
>>> i == 2
>>> i = i + 1
>>> i == 2
Activité 2
Pour répéter plusieurs fois une série d’instructions on utilise une boucle.
Pour répéter des instructions un nombre indéterminé de fois, on utilise le mot-clef while. Il s’agit d’une boucle non bornée.
Une boucle non bornée est une fonctionnalité du langage de programmation, qui exécute des instructions tant que l’évaluation de l’expression booléenne renvoie True.
On peut traduire l’algorithme ci-dessous,
tant que mon expression booléenne est vraie alors
faire quelque chose
par son implémentation en Python:
while mon_expression_booleenne:
print("Répéter")
- Dans Thonny, créer un nouveau document boucle_non_bornee.py.
- Écrire le code suivant:
i = 0
while i < 10:
print("Jusqu'ici tout va bien")
i = i + 1
print("Le plus dur c'est l'atterrissage.")
- Que se passe-t-il si on modifie le programme tel que?
i = 0
while i < 10:
print("Jusqu'ici tout va bien")
i = i + 1
print("Le plus dur c'est l'atterrissage.")
- Que se passe-t-il si on supprime la ligne?
i = i + 1
Activité 3
La construction Python
for variable in séquence
permet d’itérer (de boucler) sur tous les éléments d’une séquence.
C’est une boucle bornée.
Une séquence est une liste de valeurs auxquelles on peut accéder une par une.
- (3, 8, 9, 23) est une séquence d’entiers.
- “nsi” est une séquence de caractères.
- Dans Thonny, ouvrir les onglets Allocations mémoire et Variables.
- Exécuter le code en mode débogage; avancer avec F7:
for ma_var in (3, 8, 9, 23):
print(ma_var)
- Exécuter le code en mode débogage; avancer avec F7:
for ma_var in "nsi":
print(ma_var)
Activité 4
Python offre des outils pour faciliter certaines manipulations. La fonction range crée des séquences de nombres entiers.
Documentation
range(start, stop, step)
start | Optional. An integer number specifying at which position to start. Default is 0 |
---|---|
stop | Required. An integer number specifying at which position to stop (not included). |
step | Optional. An integer number specifying the incrementation. Default is 1. |
- Combien de paramètres minimum sont nécessaires pour la fonction range ?
- Comment construire la séquence d’entiers : 0, 1, 2, 3, 4?
- Quelles instructions faudrait-il écrire pour créer les séquences d’entiers?
- 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
- 2, 3, 4, 5, 6
- 1, 3, 5, 7, 9
Activité 5
La fonction range produit des séquences qui peuvent être parcourues dans une boucle.
À chaque tour de boucle, la valeur suivante de la séquence est affectée à la variable i.
- Exécuter le programme suivant:
for i in range(5):
print(i)
Traditionnellement la variable i (j, k,…) est utilisée dans une boucle pour stocker l’entier. Ce n’est pas une obligation. Le code suivant est fonctionnel:
for ma_var in range(5):
print(ma_var)
- Écrire un programme qui affiche :
3
6
9
12
15