- Ajout des 10 TPs d'évaluation (sans PDF) - Création GLOSSAIRE.md et AMELIORATIONS.md - Corrections f-strings, eval(), sommaires Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
97 lines
2.3 KiB
Markdown
97 lines
2.3 KiB
Markdown
# Les boucles
|
|
|
|
L'activité consiste en un TD comprenant un __cours dirigé__ et des __exercices__ relatifs à la notion de _boucles_ en Python.
|
|
|
|
## Pré-requis
|
|
|
|
Avoir effectué l'activité sur les [instructions conditionnelles](../chapitre_2/)
|
|
|
|
## Consignes
|
|
|
|
1. Télécharger le fichier [TD.ipynb](./TD.ipynb),
|
|
2. Se rendre sur [Basthon](https://notebook.basthon.fr/),
|
|
3. Ouvrir le fichier TD.ipynb téléchargé,
|
|
4. Suivre le déroulé du TD, les réponses sont à mettre directement dans votre fichier,
|
|
5. À la fin de la séance, n'oubliez pas de sauvegarder votre fichier sur votre clé USB ou espace personnel.
|
|
|
|
---------
|
|
|
|
## Mémo - Les boucles
|
|
|
|
### Boucle for (boucle bornée)
|
|
|
|
Utilisée quand on **connaît le nombre d'itérations** à l'avance.
|
|
|
|
```python
|
|
# Répéter 5 fois (i vaut 0, 1, 2, 3, 4)
|
|
for i in range(5):
|
|
print(i)
|
|
|
|
# Parcourir une liste
|
|
for element in liste:
|
|
print(element)
|
|
|
|
# Parcourir une chaîne caractère par caractère
|
|
for lettre in "Bonjour":
|
|
print(lettre)
|
|
```
|
|
|
|
### La fonction range()
|
|
|
|
| Syntaxe | Résultat |
|
|
|---------|----------|
|
|
| `range(5)` | 0, 1, 2, 3, 4 |
|
|
| `range(2, 7)` | 2, 3, 4, 5, 6 |
|
|
| `range(0, 10, 2)` | 0, 2, 4, 6, 8 |
|
|
| `range(5, 0, -1)` | 5, 4, 3, 2, 1 |
|
|
|
|
### Boucle while (boucle non bornée)
|
|
|
|
Utilisée quand on **ne connaît pas** le nombre d'itérations à l'avance.
|
|
|
|
```python
|
|
# Répéter tant que la condition est vraie
|
|
compteur = 0
|
|
while compteur < 5:
|
|
print(compteur)
|
|
compteur = compteur + 1 # Ne pas oublier !
|
|
```
|
|
|
|
### Comparaison for vs while
|
|
|
|
| Situation | Boucle à utiliser |
|
|
|-----------|-------------------|
|
|
| Répéter n fois | `for i in range(n)` |
|
|
| Parcourir une liste | `for element in liste` |
|
|
| Jusqu'à une condition | `while condition` |
|
|
| Saisie utilisateur valide | `while` |
|
|
|
|
### Exemple : Parcourir avec l'indice
|
|
|
|
```python
|
|
liste = ["a", "b", "c"]
|
|
|
|
# Méthode 1 : par les éléments
|
|
for element in liste:
|
|
print(element)
|
|
|
|
# Méthode 2 : par les indices
|
|
for i in range(len(liste)):
|
|
print(i, liste[i])
|
|
```
|
|
|
|
### Attention aux boucles infinies !
|
|
|
|
```python
|
|
# DANGER : boucle infinie (n n'est jamais modifié)
|
|
n = 0
|
|
while n < 5:
|
|
print(n)
|
|
# n = n + 1 ← Oublié !
|
|
```
|
|
|
|
---------
|
|
|
|
## Pour aller plus loin
|
|
|
|
Une fois le TD __fini__ et __validé__, vous pouvez effectuer l'[activité suivante](../chapitre_4/) |