Exercice du chapitre IV] : Exécution conditionnelle « if … elif … else ».
Exercice 1 : le type booléen : la base de toute condition.
Deviner les résultats que donneront les instructions suivantes.
En cas de doute, on peut les copier(
Ctrl-C)-coller(
Ctrl-V) dans l'interpréteur.
Pour celles en plusieurs lignes, on peut les copier(
Ctrl-C)-coller(
Ctrl-V) dans l'éditeur
IDLE, les enregistrer (
Ctrl-S), puis lancer l'exécution (
F5) :
3 + 1 == 4 |
3 + 1 == 5 |
3 + 1 = 4 |
5 <= 3 |
20 >= 6 |
3.1 <= 17.3 |
"toto" == "toto" |
"toto" == "Toto" |
"toto" != "Toto" |
test = (5>3)print(test) |
test = (5<3)print(test) |
|
age = 15TarifReduit = (age <=18)print(TarifReduit) |
age = 37TarifReduit = (age <=18)print(TarifReduit) |
|
moi = 15toi = 40moi < toi |
moi = 15toi = 15moi < toi |
romeo = 'love'juliette = 'love'couple = (romeo == juliette)print(couple) |
Exercice 2 : Atlantique Mega Screen.
Afin de mettre en place un système de caisses automatiques, le directeur du cinéma ''Atlantique Mega Screen'' vous demande de coder un programme 10_megascreen.py demandant au client son âge, et lui annonçant en retour le tarif appliqué :
- moins de 18 ans : 4€.
- 18 – 25 ans : 5€.
- sinon : 7€.
Aide :
lors de la saisie par l'utilisateur de son âge, le programme stocke celui-ci dans une variable de type chaîne de caractères. Pour pouvoir comparer l'âge à 18 ou 25, il va falloir commencer par le convertir en nombre (→ a = int(a) ).
Même souci lors de l'affichage final avec une phrase : re-convertir a en texte : str(a).
Exercice 3 : mentions au bac.
Au baccalauréat, un candidat est :
- Refusé si sa moyenne est inférieure stricte à 8.
- Convoqué à l'oral de rattrapage si sa moyenne est comprise entre 8 et 10 (exclu).
- Admis avec mention passable si sa moyenne est comprise entre 10 et 12 (exclu).
- Admis avec mention assez bien si sa moyenne est comprise entre 12 et 14 (exclu).
- Admis avec mention bien si sa moyenne est comprise entre 14 et 16 (exclu).
- Admis avec mention très bien si sa moyenne est supérieure à 16.
Afin d'automatiser l'attribution des mentions, le Recteur d'académie vous commande un logiciel 11_mention.py qui :
- demande à l'utilisateur la moyenne obtenue au baccalauréat.
- renvoie si le candidat est refusé, convoqué ou admis ainsi que la mention le cas échéant.
Exercice 4 : touché – coulé.

La grille ci-contre est composée de 5 lignes et 5 colonnes.
Un bateau est situé en 4, 2 : colonne 4 et ligne 2, ou dans une case de votre choix.
Le joueur ne sait pas où se trouve le bateau et cherche à l'atteindre en tirant un boulet de canon.
Écrire un programme 12_touchecoule.py qui demande au joueur de choisir une colonne, puis une ligne et lui répond :
- Touché, si le joueur a trouvé la case du bateau.
- En vue, si le joueur a choisi une case sur la même ligne ou la même colonne que le bateau.
- A l'eau, sinon : le boulet tombe à l'eau.
Aides :
1) Attention encore aux types (int ou str). Si l'on se sent à l'aise, on pourra maintenant gagner du temps avec une syntaxe plus ramassée :
col = int(input( 'Quelle est votre colonne ?'))
2) Le test du if peut composer plusieurs condition à vérifier :
- if (variable ==10) or (variable >=20) :
- if (variable1 ==2) and (variable2 ==5) :
3) Plutôt que d'écrire tout le programme d'un coup, au risque d'avoir du mal à trouver ses erreurs à la fin, on pourra réaliser des tests intermédiaires : par exemple, une fois testé si le bateau a été touché, lancer le programme pour vérifier que la partie déjà écrite fonctionne.
Exercice 5 : maximum de 3 nombres.
Écrire un programme 13_maximum.py qui prendra en entrée trois nombres réels a, b et c et qui renverra le maximum.
Contrainte d'efficacité :
vous n'avez le droit qu'à deux if pour traiter cet exercice, commencer par compléter l'algorithme ci-contre.