Python 2 — Structures conditionnelles
Niveau : Seconde GT
Découvrez comment faire des tests en Python et adapter le comportement d'un programme selon le résultat d'un test.
- Booléens et opérateurs de comparaison
- Bloc conditionnel
if - Alternative
if / else - Choix multiple
if / elif / else
Ctrl + Entrée exécute la cellule active.Shift + Entrée exécute et passe à la suivante.
Rappels sur les booléens
Les comparaisons produisent des valeurs True ou False.
| Opérateur | Symbole | Exemple |
|---|---|---|
| Supérieur strict | > | 9 > 5 → True |
| Supérieur ou égal | >= | 9 >= 9 → True |
| Inférieur strict | < | 5 < 9 → True |
| Inférieur ou égal | <= | 5 <= 5 → True |
| Égalité | == | 5 == 5 → True |
| Différence | != | 9 != 5 → True |
⚠️ Pour tester l'égalité, on utilise == (deux signes) et non = qui est réservé à l'affectation.
Prédisez le résultat de chaque cellule avant de l'exécuter :
Exécuter du code sous condition — if
if condition:
# code si la condition est vraieExécutez les deux exemples et observez la différence :
Exercice 1
Codez un programme qui définit une variable x et qui affiche "Trouvé !" si x est égal à 12.
Correction
Exercice 2
Codez un programme qui définit une variable code et affiche "Code invalide" si code != 3141, et dans tous les cas affiche "(Mot de passe oublié ?)".
Correction
Alternative — if / else
if condition:
# si vraie
else:
# si fausseExercice 3
Affiche "Trouvé !" si x == 12, sinon "Perdu !".
Correction
Exercice 4
Même chose que l'exercice 2 mais maintenant affiche "Code correct !" si le code est bon.
Choix multiple — if / elif / else
if condition1:
# si cond1 vraie
elif condition2:
# si cond1 fausse et cond2 vraie
else:
# si toutes faussesExercice 5
Demandez un nombre x et affichez "Plus grand !" si x < 12, "Plus petit !" si x > 12, "Bravo !" si x == 12.
Rappel : saisie utilisateur
x = int(input("Entrez un nombre: "))
Correction
Problème transversal — Test de primalité
Un nombre premier est un entier supérieur à 1 dont les seuls diviseurs sont 1 et lui-même.
Codez une fonction est_premier(n) qui renvoie True si n est premier, False sinon.
Aide
Tester si n % k == 0 pour tous les k de 2 à n-1. Si un diviseur est trouvé, n n'est pas premier.