Notebook associé
Le notebook constitue le support principal de cette séance. Il permet de lire les explications, modifier le code et exécuter les cellules pas à pas.
Consultez le mode d’emploi Jupyter.
Répéter sans recopier
Nous savons désormais écrire des instructions qui dépendent d’une condition.
Mais que se passe-t-il si un même traitement doit être exécuté plusieurs fois ?
Écrire plusieurs fois la même instruction fonctionne, mais devient rapidement long et difficile à modifier.
Le problème à résoudre
Lorsque le nombre de répétitions est connu
Dans certaines situations, nous savons à l’avance combien de fois un traitement doit être exécuté.
Par exemple :
- afficher un message 10 fois ;
- effectuer 5 tentatives ;
- produire une suite de valeurs ;
- répéter un calcul un nombre fixé de fois.
Python permet de décrire
ce type de répétition
avec une boucle for.
Produire les valeurs nécessaires à la boucle
Une boucle for
peut parcourir une suite de valeurs.
Pour produire une suite d’entiers, Python fournit notamment la fonction :
range()
Nous verrons comment choisir :
- la borne de fin ;
- la borne de départ ;
- le pas entre deux valeurs.
Une valeur différente à chaque tour
À chaque passage dans une boucle, une variable peut recevoir une nouvelle valeur.
Cette variable permet par exemple d’afficher le numéro du tour ou d’utiliser la valeur courante dans un calcul.
Le notebook permettra d’observer précisément son évolution.
Application : Deviner un nombre
Dans la version précédente de Deviner un nombre, le joueur ne disposait que d’une seule tentative.
Nous allons maintenant lui accorder plusieurs essais.
Le nombre de tentatives
sera fixé à l’avance :
la boucle for
permettra donc de répéter
le même traitement
plusieurs fois.
Votre mission
Dans le notebook, vous allez progressivement apprendre à :
-
écrire une boucle
for; -
comprendre ce que produit
range(); -
utiliser plusieurs formes
de
range(); - exploiter la variable de boucle ;
- modifier Deviner un nombre pour autoriser plusieurs tentatives.
Et si le traitement devait s’arrêter plus tôt ?
Une boucle for
effectue les répétitions prévues.
Dans Deviner un nombre, cela signifie que le programme peut continuer à proposer des tentatives même si le nombre a déjà été trouvé.
Comment répéter un traitement tant qu’une condition est vraie ?
À retenir
- Une boucle permet de répéter un bloc d’instructions.
-
forest adapté lorsqu’on connaît le nombre de répétitions ou les valeurs à parcourir. -
range()permet de produire une suite d’entiers. - La variable de boucle prend successivement les valeurs parcourues.