Accueil › Cours › Les conditions
Conditions Si, Sinon, Selon en Python et algo : cours 2ème TI
Fais choisir ton programme : il agit selon la situation.
Les leçons de ce chapitre
- Si … alors
- Sinon et conditions composées
- Plusieurs cas
Leçon 4.1 : Si … alors
Jusqu'ici, ton programme exécute toutes les lignes dans l'ordre. Avec une condition, il ne fait certaines instructions que si quelque chose est vrai.
La comparaison
Une condition est une comparaison qui donne vrai ou faux. Les opérateurs sont <, >, <=, >=, l'égalité et la différence. Attention : l'égalité s'écrit = en algorithme, mais == en Python (un seul = en Python est une affectation !). La différence s'écrit ≠ en algorithme et != en Python.
La structure
- En algorithme :
Si condition Alors…FinSi. - En Python :
if condition:suivi d'un bloc décalé (indentation de 4 espaces).
Attention : Python reconnaît le bloc grâce au décalage et aux deux-points :. Oublier le : ou décaler mal le bloc donne une erreur.
En Python
Le print("Admis") est décalé : il fait partie du if. Le dernier print n'est pas décalé : il est toujours exécuté.
print("Donner la note :")
note = float(input())
if note >= 10:
print("Admis")
print("Fin du programme")
En algorithme
Si … Alors … FinSi entoure les instructions conditionnelles. Ce qui est après FinSi est toujours exécuté.
Algorithme Admis
Début
Ecrire("Donner la note :")
Lire(note)
Si note >= 10 Alors
Ecrire("Admis")
FinSi
Ecrire("Fin du programme")
Fin
TDO
Objet | Type/Nature
note | Réel
Leçon 4.2 : Sinon et conditions composées
Souvent il faut deux chemins : un si la condition est vraie, un autre sinon. C'est la structure complète : Si … Alors … Sinon … FinSi. En Python : if … : puis else:.
Combiner des conditions
et/and: vrai si les deux sont vraies.ou/or: vrai si au moins une est vraie.non/not: inverse la condition.
Attention : Pour dire « x est entre 10 et 20 », il faut écrire les deux comparaisons : x >= 10 and x <= 20. Le texte 10 <= x <= 20 n'est pas valable en algorithme.
Astuce : Un nombre n est pair si n mod 2 = 0 (en Python n % 2 == 0).
En Python
Deux chemins : le else est exécuté quand la condition est fausse. Ici la condition combine deux comparaisons avec and.
print("Donner l'âge :")
age = int(input())
if age >= 18 and age < 65:
print("Tarif plein")
else:
print("Tarif réduit")
En algorithme
En algorithme on écrit et, ou, non en toutes lettres.
Algorithme Tarif
Début
Ecrire("Donner l'âge :")
Lire(age)
Si age >= 18 et age < 65 Alors
Ecrire("Tarif plein")
Sinon
Ecrire("Tarif réduit")
FinSi
Fin
TDO
Objet | Type/Nature
age | Entier
Leçon 4.3 : Plusieurs cas
Quand il y a plus de deux chemins, on enchaîne les conditions : c'est la structure généralisée. En algorithme : Sinon Si. En Python : elif. Les conditions sont testées de haut en bas et dès qu'une est vraie, les suivantes sont ignorées.
Attention : L'ordre compte ! Pour trouver une mention, commence par la plus haute note. Si tu testes note >= 10 en premier, un 15 s'arrêtera là.
Selon (algorithme)
Quand on compare une même variable à plusieurs valeurs, l'algorithme propose Selon. Chaque cas s'écrit valeur : instruction, et Sinon : traite tous les autres cas. En Python, on écrit des elif.
En Python
Une seule branche est exécutée : la première dont la condition est vraie.
print("Donner un numéro de jour (1 à 3) :")
j = int(input())
if j == 1:
print("Lundi")
elif j == 2:
print("Mardi")
elif j == 3:
print("Mercredi")
else:
print("Autre jour")
En algorithme
Ici Selon remplace la chaîne de Sinon Si.
Algorithme Jour
Début
Ecrire("Donner un numéro de jour (1 à 3) :")
Lire(j)
Selon j Faire
1 : Ecrire("Lundi")
2 : Ecrire("Mardi")
3 : Ecrire("Mercredi")
Sinon : Ecrire("Autre jour")
FinSelon
Fin
TDO
Objet | Type/Nature
j | Entier
S'entraîner gratuitement
Chaque leçon a 3 exercices gratuits avec indices, et 8 missions du jeu pour appliquer ce chapitre avec Hannibot.
← Chapitre précédent : Lire et écrire · Chapitre suivant : Les chaînes de caractères →
Tous les chapitres · Voir les devoirs corrigés de 2ème TI
Cours écrit pour Mission Carthage d'après le programme officiel. Ton professeur reste la référence.