2ndeArithmétique

Boucles et conditions en Python

20 min5 exercicesSéquence 2.22nde

Vidéo disponible dans la version Premium

Durée : 20 min

La boucle for

La boucle for permet de répéter une instruction un nombre de fois connu à l'avance, en utilisant souvent la fonction range(...).

`python
for i in range(5):
print(i)
`

Ce programme affiche 0, 1, 2, 3, 4 (chacun sur une ligne) : range(5) génère les entiers de 00 à 44 (le nombre 55 n'est pas inclus).

Attention : en Python, l'indentation (les espaces en début de ligne) indique quelles instructions appartiennent à la boucle. Toutes les lignes indentées sous le for sont répétées.

La boucle while

La boucle while répète une instruction tant qu'une condition est vraie, sans connaître à l'avance le nombre de répétitions.

`python
n = 1
while n <= 100:
n = n * 2
print(n)
`

Ce programme double n tant que n \leqslant 100, en partant de 11 : 1,2,4,8,16,32,64,1281, 2, 4, 8, 16, 32, 64, 128. À 128128, la condition n100n \leqslant 100 devient fausse, la boucle s'arrête, et le programme affiche 128.

Les instructions conditionnelles if / elif / else

Une instruction if exécute un bloc de code seulement si une condition est vraie.

`python
n = 7
if n % 2 == 0:
print("pair")
else:
print("impair")
`

n % 2 calcule le reste de la division de n par 22 : ce reste vaut 00 si n est pair. Ici, n = 7, donc n % 2 = 1, la condition n % 2 == 0 est fausse, et le programme affiche impair.

Remarque : == teste une égalité (vrai/faux), alors que = affecte une valeur. Ne pas confondre les deux !

On peut enchaîner plusieurs conditions avec elif (« sinon si ») :

`python
note = 12
if note >= 16:
print("Très bien")
elif note >= 10:
print("Admis")
else:
print("Non admis")
`

Exemples

✅ Exemple simple — Boucle for et somme

`python
somme = 0
for i in range(1, 6):
somme = somme + i
print(somme)
`

range(1, 6) génère 1,2,3,4,51, 2, 3, 4, 5. On additionne ces valeurs à somme à chaque tour : 1+2+3+4+5=151+2+3+4+5=15. Le programme affiche 15.

📘 Exemple intermédiaire — Tester la parité

`python
for nombre in range(1, 8):
if nombre % 2 == 0:
print(nombre, "est pair")
else:
print(nombre, "est impair")
`

Pour chaque entier de 11 à 77, le programme affiche s'il est pair ou impair, par exemple 1 est impair, 2 est pair, etc.

🔴 Exemple avancé — Compter les multiples avec while

`python
compteur = 0
n = 1
while n <= 50:
if n % 3 == 0:
compteur = compteur + 1
n = n + 1
print("Nombre de multiples de 3 entre 1 et 50 :", compteur)
`

Ce programme parcourt les entiers de 11 à 5050 un par un, et incrémente compteur chaque fois que n est un multiple de 33. Il existe 1616 multiples de 33 entre 11 et 5050 (3,6,,483, 6, \ldots, 48), donc le programme affiche Nombre de multiples de 3 entre 1 et 50 : 16.

À retenir

- for i in range(n): répète un bloc n fois, avec i valant successivement 0,1,,n10, 1, \ldots, n-1.
- while condition: répète un bloc tant que la condition est vraie.
- if / elif / else exécute un bloc selon qu'une condition est vraie ou fausse.
- % donne le reste d'une division ; == teste une égalité (différent de =, qui affecte).
- L'indentation délimite les blocs d'instructions en Python.

Exercices

Que va afficher ce code ?

`python
for i in range(3):
print(i)
`

L'opérateur == en Python sert à affecter une valeur à une variable.

Suivez votre progression

Connectez-vous pour sauvegarder votre avancement et gagner des XP.

Se connecter