TP2 - Les conditions
- Comprendre le rôle d’une condition dans un programme ;
- Utiliser les mots-clés
if,elifetelse; - Tester des expressions logiques à l’aide des opérateurs de comparaison (
<,>,==, etc.) ; - Combiner plusieurs conditions avec
andetor; - Écrire un programme qui prend une décision en fonction des valeurs stockées dans des variables.
- Se créer un dossier
SNTsur votre ordinateur ou clé USB - Dans ce dossier, créer un dossier
T3 - Programmation(Programmation Orientée Objet)
Sur EduPython ou autre instance python, faire :
- Créer un nouveau fichier en cliquant sur l'icône
📄, ou en appuyant surCTRL+N - Enregistrer le fichier sous le nom
TP2_Conditionsen cliquant sur l'icône💾, ou en appuyant surCTRL+S
L'ensemble des exercices se fait sur le logiciel EduPython.
Certains programmes que l'on écrit nécessitent de pouvoir prendre une décision en fonction d'une situation.
Imaginons un programme qui affiche la mention obtenue au brevet. La logique à employer serait la suivante :
Si la note est supérieure à 16, alors il a mention très bien.
Sinon, si elle est supérieure à 14, alors il a mention bien.
Sinon, si elle est supérieure à 12, alors il a mention assez bien.
En programmation, ce type de décision s'appelle une structure conditionnelle.
Elles sont représentées, en français, par la structure suivante :
SI une condition est vraie :
On exécute ces instructions
SINON SI une autre condition est vraie :
On exécute plutôt ces instructions
SINON :
on va exécuter celles-là
En python, on représente cette structure ainsi :
if condition1 :
# instructions si la condition1 est vraie
elif condition2 :
# instructions si la condition1 est fausse et que la condition2 est vraie
else :
# instructions si aucune condition n'est vraie
ifsignifiesielifsignifiesinon sielsesignifiesinonconditionreprésente un test à effectuer, très souvent de nature mathématiques, est écrit à l'aide des opérateurs suivants :
- < (inférieur)
- <= (inférieur ou égal)
- > (supérieur)
- >= (supérieur ou égal)
- == (égal)
- != (différent)
- and (et)
- or (OU)
< : Strictement inférieur.
age = 12
if age < 18:
print("Tarif réduit")
Si ce que contient la variable
ageest strictement inférieur à 18, alors on affiche "Tarif réduit".
<= : Inférieur ou égal.
note = 10
if note <= 10:
print("Résultat insuffisant ou juste la moyenne")
Si ce que contient la variable
noteest inférieur ou égal à 10, alors on affiche "Résultat insuffisant ou juste la moyenne".
> : Strictement supérieur.
score = 1200
if score > 1000:
print("Niveau expert")
Si ce que contient la variable
scoreest strictement supérieur à 1000, alors on affiche "Niveau expert".
>= : Supérieur ou égal.
points = 50
if points >= 50:
print("Bonus débloqué")
Si ce que contient la variable
pointsest supérieur ou égal à 50, alors on affiche "Bonus débloqué".
== : Égal.
code = 1234
if code == 1234:
print("Code correct")
else :
print("Code incorrect")
Si ce que contient la variable
codeest égal à 1234, alors on affiche "Code correct". Sinon, on affiche "Code incorrect".
!= : Différent.
couleur = "rouge"
if couleur != "bleu":
print("Couleur incorrecte")
Si ce que contient la variable
couleurest différent de "bleu", alors on affiche "Couleur incorrecte".
and : Et.
moyenne = 15
serieux = True #Signifie "Vrai"
if moyenne > 14 and serieux == True :
print("L'élève a les félicitations")
Si ce que contient la variable
moyenneest supérieur à 14 et si ce que contient la variableserieuxest égal à True, alors on affiche "L'élève a les félicitations".
or : Ou.
jour = "samedi"
if jour == "samedi" or jour == "dimanche":
print("C’est le week-end")
Si ce que contient la variable
jourest égal à "samedi" ou si ce que contient la variablejourest égal à "dimanche", alors on affiche "C’est le week-end".
Prise en main
- 1Recopier puis exécuter le programme suivant :
a = 5
test = 6 * a + 2
print("Le test vaut :", test)
if test > 20:
print("Condition vraie → test réussi")
else:
print("Condition fausse → test loupé")- Quelle est la valeur calculée pour
test? - La condition
test > 20est-elle vraie ou fausse ? - Qu’est-ce que Python affiche ?
- Quelle est la valeur calculée pour
- 2Modifier la valeur de
apar 1. Exécuter à nouveau le programme.- Quelle est la nouvelle valeur de
test? - La condition devient-elle vraie ou fausse ?
- Le résultat affiché change-t-il ? Pourquoi ?
- Quelle est la nouvelle valeur de
- 3Tester avec d’autres valeurs de votre choix (par exemple 0, 10, 50).
Trouver une valeur deapour laquelle la condition devient vraie.
Notes
Un élève soucieux de ses résultats souhaite créer un programme qui vérifie s'il va obtenir son bac, et si oui, avec quelle mention.
- 1Créer une variable
moyennecontenant une valeur de votre choix.
Afficher simplement son contenu avecprint(moyenne)pour vérifier que tout fonctionne. - 2Écrire dans un premier temps une condition qui affiche "admis" si la moyenne est supérieure ou égale à 10, et "ajourné" sinon.
- 3Si un élève est admis, ajouter ensuite les conditions pour afficher la mention obtenue :
- 16 ou plus → mention très bien
- 14 ou plus → mention bien
- 12 ou plus → mention assez bien
- 10 ou plus → admis sans mention
- 4Tester votre programme avec plusieurs valeurs de moyenne différentes, et vérifier que le résultat correspond bien à ce qui est attendu.
Cinéma
Le cinéma Excelsior de Saint-Dié propose plusieurs tarifs pour voir des films :
- 7 € pour les plus de 24 ans ;
- 5 € de 14 à 24 ans ;
- 4 € de 6 à 14 ans ;
- 3 € en dessous de 6 ans.
- 1Créer une variable
agecontenant une valeur de votre choix.
Afficher simplement son contenu avecprint(age)pour vérifier que tout fonctionne. - 2Écrire maintenant un programme qui affiche uniquement le tarif de la première tranche, c’est-à-dire :
- si l'âge est strictement supérieur à 24, afficher
7 euros.
- si l'âge est strictement supérieur à 24, afficher
- 3Ajouter la deuxième tranche d’âge :
- sinon si (
elif) l'âge est supérieur ou égal à 14, afficher5 euros. Tester votre programme avec plusieurs valeurs.
- sinon si (
- 4Compléter le programme avec les deux autres tranches :
- de 6 à 14 ans →
4 euros - moins de 6 ans →
3 euros
- de 6 à 14 ans →
- 5Tester votre programme avec au moins 4 âges différents.
Vérifier que le résultat correspond bien au tableau des tarifs.
Réciproque du théorème de Pythagore
La réciproque du théorème de Pythagore dit que :
Si a² + b² = c² alors le triangle est rectangle.
⚠️ En Python, on écrit un carré avec **2.
Exemple : a**2 signifie a².
- 1
Faire un programme qui permet de saisir 3 entiers
a,betc.Saisir des entiersPour saisir une valeur entière, on utilise :
entier = int(input("Saisir une valeur : "))inputdemande une saisie, etintconvertit cette saisie en nombre entier. - 2
Recopier et compléter dans votre programme le calcul suivant :
somme = ... + ...
carre_c = ...
print(..., ...)Cela permet de vérifier visuellement les valeurs obtenues.
- 3
Ajouter ensuite une condition permettant de tester si le triangle est rectangle :
- Si
a² + b²est égal àc²→ afficher "triangle rectangle" - Sinon → afficher "triangle non rectangle"
- Si
- 4
Tester votre programme avec plusieurs valeurs :
- 3, 4, 5 → triangle rectangle
- 2, 3, 4 → triangle non rectangle
- Vos propres exemples
Triangle isocèle
On souhaite faire un programme qui permet de saisir 3 entiers a, b et c, correspondants aux valeurs des segments du schéma suivant :

Le programme doit vérifier grâce aux entiers si le triangle est isocèle.
- 1Faire un programme qui permet de saisir 3 entiers a, b et c.
- 2Rajouter dans ce programme les conditions nécessaires pour vérifier grâce aux variables, si le triangle est isocèle, et afficher
"isocèle"ou"non isocèle"en conséquence. - 3Modifier le programme pour vérifier si un triangle est équilatéral.
Points dans un repère
Dans un repère, un point (A) est représenté par son abscisse (X_A) et son ordonnée (Y_A).
On définit trois points :
A(4 ; 4), B(6 ; 4) et C(4 ; 4).
- 1À l’aide de deux variables pour chaque point, stocker les coordonnées de chacun d’eux.
On pourra utiliser :xa,ya,xb,yb, etc. - 2Deux points sont identiques s’ils ont la même abscisse et la même ordonnée.
À l’aide d’une condition, vérifier et afficher"même coordonnées"si les points A et B sont identiques, ou"différentes coordonnées"sinon. - 3Tester le programme en comparant cette fois les points A et C, et observer le résultat.
La distance entre deux points est donnée par la formule :
- 4Calculer les distances AB et BC, puis, à l’aide d’une condition, afficher
"identique"si les deux distances sont égales, ou"non identique"sinon.