Objectifs de cette leçon
- Écrire des conditions avec if / elif / else
- Combiner des opérateurs de comparaison et logiques
- Prendre des décisions dans un programme
Conditions et branchements ❓
Un programme qui fait toujours la même chose, c'est limité. Grâce aux conditions, le programme peut choisir quoi faire selon la situation.
1. Prendre des décisions 🤔
Imagine que tu joues à un jeu vidéo :
SI le joueur a plus de 3 vies ALORS il continue SINON la partie est finie
C'est exactement comme ça que fonctionnent les conditions en programmation : on pose une question, et selon la réponse, on fait une action ou une autre.
2. La structure si / sinon 🧱
En pseudo-code, une condition s'écrit comme ceci :
Exécution pas à pas
pseudo1/6❓SI condition ALORS❓ DécisionOn vérifie si "condition" est vraie. Le programme choisit entre deux chemins.Question : "condition" est-elle vraie ? Le programme choisit entre deux chemins.
🔍 Décortiquons ça :
SI= "est-ce que… ?" — on pose une questionALORS= ce qu'on fait si la réponse est OUISINON= ce qu'on fait si la réponse est NONFIN SI= la condition est terminée, on continue après
Le programme regarde la condition : si elle est vraie, il exécute le bloc ALORS. Si elle est fausse, il exécute le bloc SINON. On ne fait jamais les deux à la fois !
3. Exemple concret : vérifier l'âge 🎂
age = 16 if age >= 18: print("Vous êtes majeur") peut_voter = True else: print("Vous êtes mineur") peut_voter = False
Pas à pas :
- Le programme regarde
age→ il vaut16- Il vérifie :
16 >= 18? → Non (c'est faux !)- Du coup, il saute le bloc
ifet va directement dans leelse- Il affiche "Vous êtes mineur" et met
peut_voter = False
Avec age = 20, la condition 20 >= 18 serait vraie, donc il afficherait "Vous êtes majeur" et mettrait peut_voter = True.
💡 Retiens bien :
ifvérifie la condition. Si c'est vrai → on entre dans le bloc. Si c'est faux → on passe auelseou on ignore.
4. Les opérateurs de comparaison 📏
Pour poser une question à l'ordinateur, on utilise ces symboles :
| Opérateur | Signification | Exemple | Résultat |
|---|---|---|---|
== | Égal à | 5 == 5 | ✅ Vrai |
!= | Pas égal à | 5 != 3 | ✅ Vrai |
> | Plus grand que | 5 > 3 | ✅ Vrai |
< | Plus petit que | 5 < 3 | ❌ Faux |
>= | Plus grand ou égal | 5 >= 5 | ✅ Vrai |
<= | Plus petit ou égal | 5 <= 3 | ❌ Faux |
⚠️ Attention :
=tout seul, c'est pour donner une valeur à une variable.==avec deux signes, c'est pour comparer. C'est une erreur très fréquente !
Voici le chemin que prend le programme quand on vérifie un âge :
Le diagramme interactif "Exécution pas à pas" plus bas te montrera chaque étape avec des animations. Tu verras la flèche se déplacer case par case ! 🎮
5. Combiner plusieurs conditions avec les opérateurs logiques 🔗
On peut poser plusieurs questions à la fois :
| En français | En Python | Signification |
|---|---|---|
| ET | and | Les DEUX conditions doivent être vraies |
| OU | or | Au moins UNE des deux doit être vraie |
| NON | not | Inverse le résultat (vrai → faux, faux → vrai) |
Exemples de la vie quotidienne :
# ET : les deux conditions doivent être vraies age = 16 permis = True if age >= 18 and permis == True: print("Tu peux conduire !") # Pas encore, age est trop petit # OU : au moins une condition vraie meteo = "pluie" if meteo == "pluie" or meteo == "neige": print("Prends un parapluie !") # Vrai car il pleut # NON : inverse est_rouge = False if not est_rouge: print("Ce n'est pas rouge") # Va s'afficher car est_rouge est False
🎯 Petit moyen mnémotechnique :
and= les deux (comme à l'école : il faut avoir 10/10 en maths ET en français)or= l'un ou l'autre (au goûter : tu peux prendre un gâteau OU une pomme)not= le contraire (comme "pas" en français)
6. elif : quand il y a plus de deux choix 🔀
Parfois on a besoin de vérifier plusieurs possibilités, pas juste "si" et "sinon". On utilise elif (contraction de "else if") :
nombre = int(input("Entrez un nombre : ")) if nombre > 0: print("Positif") elif nombre < 0: print("Négatif") else: print("Zéro")
Comment ça marche ?
- La première condition
nombre > 0est-elle vraie ? → Si oui, on affiche "Positif" et on a fini- Sinon, on vérifie
elif nombre < 0→ Si oui, on affiche "Négatif"- Sinon (
else), il ne reste qu'une possibilité : c'est zéro !
7. Piège classique ⚠️
Ne pas confondre = et ==
# ❌ Faux if age = 18: # Erreur ! = c'est pour donner une valeur print("tu as 18 ans") # ✅ Correct if age == 18: # == c'est pour comparer print("tu as 18 ans")
📌 Astuce : lis
==comme "est-ce que… est égal à… ?" et=comme "met cette valeur dans…"
8. Exercice pour toi 🎯
Ouvre l'onglet Sandbox et écris un programme qui :
- Demande à l'utilisateur son âge (
input) - Si l'âge est inférieur à 12, affiche "Enfant"
- Sinon si l'âge est entre 12 et 17, affiche "Adolescent"
- Sinon si l'âge est entre 18 et 64, affiche "Adulte"
- Sinon (65 et +), affiche "Senior"
- Bonus : si la personne est ado ou senior, affiche "Tu as droit à un tarif réduit !"
⚡ Simulateur — Structure SI / SINON
Étape 1/6Test de condition selon l'âge.
⚡ Simulateur — Conditions imbriquées
Étape 1/5On évalue une note sur 20.