Académique Documents
Professionnel Documents
Culture Documents
ENSAM RABAT
Présenté par :
Creative Commons
Pr. Nordine ZIDANE
INTRODUCTION
PLAN
PLAN
P A
L Historique N
Concepts
Applications
Structures conditionnelles et
itératives.
Objectifs de ce module
Plan de ce module
1. Ruptures de séquences.
2. Structures conditionnelles.
3. Structures itératives.
1. RUPTURES DE SÉQUENCES.
Plan de ce chapitre
a. Motivation.
b. Conditionnelle.
c. Opérateurs de comparaison.
d. Opérateurs logiques.
a. Motivation.
• Un programme n’est pas nécessairement qu’une
succession d’instructions exécutées les unes à la suite des
autres.
a. Motivation.
• Par exemple, si l’on veut résoudre une équation du second
degré, les calculs ne seront pas les mêmes selon que le
discriminant soit positif ou négatif.
b. Conditionnelle.
• Conditionnelle : expression booléenne dont la valeur va
déterminer les actions réalisées dans la suite du
programme.
c. Opérateurs de comparaison.
Liste des opérateurs de comparaison :
c. Opérateurs de comparaison.
Exemples :
>>> 2 == 2.0
True
>>> 3.5 < 2
False
>>> "comparer" <
"comparaison" False
>>> '*' < '+'
True
d. Opérateurs logiques.
• Ce sont des opérateurs qui reliententre elles
plusieurs expressions booléennes pour en former de
nouvelles.
• Opérateurs binaires :
or
and
• Opérateur unaire :
not
Le 15/10/2022 ZIDANE NORDINE 14
1. Ruptures de séquences.
d. Opérateurs logiques.
Tables de vérité des opérateurs logiques :
a b a or b a and b
False False False False
False True True False
True False True False
True True True True
a not a
False True
True False
d. Opérateurs logiques.
Exemples :
Fin de ce chapitre
2. STRUCTURES
CONDITIONNELLES.
Plan de ce chapitre
a. Test simple.
b. Test avec alternative(s).
c. Opérateur ternaire.
d. Imbrication de tests.
e. Exercices.
a. Test simple.
• L’idée de base est donc la réalisation d’une ou plusieurs
actions selon la vérification d’une condition.
a. Test simple.
Syntaxe d’un test simple :
if conditionnelle:
bloc d’instructions à exécuter si la
conditionnelle est vraie
a. Test simple.
Remarque plus qu’importante :
a. Test simple.
Exemple de test simple : remplacer un nombre par sa valeur
absolue
x = eval(input())
if x < 0:
x = -x
print(x)
SI ... ALORS...
SINON SI ... ALORS...
SINON ...
if conditionnelle:
bloc d’instructions à exécuter si la
conditionnelle est vraie
else:
bloc d’instructions à exécuter si la
conditionnelle est fausse
n = eval(input())
if n%2 == 0:
print("le nombre saisi est pair")
else:
print("le nombre saisi est impair")
if conditionnelle:
bloc d’instructions à exécuter si la
conditionnelle est vraie
elif autre_conditionnelle:
bloc d’instructions à exécuter si la
seconde conditionnelle est vraie
else:
bloc d’instructions à exécuter si les
premières conditionnelles sont fausses
x = eval(input())
if x < 0:
print("le nombre saisi est strictement
négatif")
elif x > 0:
print("le nombre saisi est strictement
positif")
else:
print("le nombre saisi est nul")
Le 15/10/2022 ZIDANE NORDINE 28
2. Structures conditionnelles.
c. Imbrication de tests.
• L’imbrication de structuresconditionnelles est non
seulement possible mais souvent fort utile.
c. Imbrication de tests.
Exemple : équation du premier degré ax + b = 0
a,b = eval(input()),eval(input())
if a == 0:
if b == 0:
print("infinité de solutions")
else:
print("pas de solution")
else:
print("unique solution :",-b/a)
d. Opérateur ternaire.
• Cet opérateur permet dans certains cas une syntaxe plus
compacte d’un test avec une alternative.
d. Opérateur ternaire.
Syntaxe de l’opérateur ternaire :
d. Opérateur ternaire.
Exemples : majeur ou mineur ?
e. Exercices.
Exercice : écrire un programme calculant les maximums et
minimums de deux nombres.
e. Exercices.
Solution 1 : avec un test à une alternative
x,y = eval(input()),eval(input())
if x > y:
mini,maxi = y,x
else:
mini,maxi = x,y
print("minimum :",mini,", maximum :",maxi)
e. Exercices.
Solution 2 : avec un test simple
x, y = eval(input()),eval(input())
mini, maxi = x, y
if x > y:
mini, maxi = y, x
print("minimum :",mini,", maximum :",maxi)
e. Exercices.
Exercice : écrire un programme qui en fonction de la
moyenne aux écrits du Bac indique si le lycéen en question
est admis, recalé ou au rattrapage.
e. Exercices.
Solution :
note = eval(input())
if note < 8:
print("recalé")
elif note < 10:
print("rattrapage")
else:
print("admis")
Fin de ce chapitre
3. STRUCTURES ITÉRATIVES.
Plan de ce chapitre
a. Notion d’itération.
b. Structure « for ».
c. Structure « while ».
d. Imbrications de structures itératives.
e. Sorties de boucles.
f. Clause « else » dans une boucle.
g. Exercices.
Le 15/10/2022 ZIDANE NORDINE 41
3. Structures itératives.
a. Notion d’itération.
Dans certaines situations, on est amené à exécuter plusieurs
fois des actions identiques ou du moins de même nature.
b. Structure “for”.
• La structure « for » réalise un nombre d’itérations fixe et
connu.
b. Structure “for”.
Syntaxe de la fonction “range” :
range(début,fin,pas)
b. Structure “for”.
Exemples d’utilisation de la fonction “range” :
b. Structure “for”.
Syntaxe de la structure “for” :
b. Structure “for”.
Explication du fonctionnement :
b. Structure “for”.
Exemple : table de multiplication d’un entier saisi
par l’utilisateur
n = eval(input())
for i in range(1,11):
print(i,'*',n,'=',n*i)
b. Structure “for”.
Déroulement du programme :
b. Structure “for”.
Autre exemple : affichage des nombres pairs entre 20 et 0
for i in
range(20,-1,-2):
print(i)
c. Structure “while”.
• La structure « while » réalise un nombre d’itérations non
nécessairement connu à l’écriture du programme.
c. Structure “while”.
Syntaxe de la structure “while” :
while conditionnelle:
bloc d’instructions à exécuter tant que
la conditionnelle est vraie
c. Structure “while”.
Explication du fonctionnement :
c. Structure “while”.
Exemple : calcul de la partie entière d’un réel positif
x = eval(input())
n = 0
while n+1 <=
x: n += 1
print("la partie entière de",x,"est",n)
c. Structure “while”.
Déroulement du programme :
c. Structure “while”.
Exemple à ne pas suivre :
i = 2
while i < 3:
print("coucou")
for i in range(1,11):
print("table de",i)
for j in
range(1,11):
print("\t",j,"*",i,"=",j*i)
e. Sorties de boucles.
Deux possibilités pour “sortir” d’une boucle :
e. Sorties de boucles.
Exemple de “break” : où l’on félicite l’utilisateur s’il saisit un
‘x’ en au plus 10 tentatives.
for i in range(9):
if input() == 'x':
print("quel talent")
break
e. Sorties de boucles.
Exemple de “continue” : affichage de tous les nombres de 10
à 20 sauf le nombre 13.
for i in
range(10,21): if
i == 13:
continue
print(i)
while conditionnelle:
bloc d’instructions à exécuter tant que
la conditionnelle est vraie
else:
bloc d’instruction à exécuter (une
fois) si la conditionnelle est fausse
n = eval(input())
for i in range(2,n):
if n%i == 0:
premier = False
break
else:
premier = True
g. Exercices.
Exercice : écrire un programme calculant la somme des
premiers entiers naturels jusqu’à un entier positif saisi par
l’utilisateur.
g. Exercices.
Solution :
n = -1
while n < 0:
n = eval(input())
somme = 0
for i in range(n+1):
somme += i
print("la somme des",n,"premiers entiers
vaut",somme)
g. Exercices.
Exercice : écrire un programme calculant la somme d’une
suite d’entiers saisie par l’utilisateur se terminant par 0
(exemple 5, 4, 9, 0 renverra 18).
g. Exercices.
Solution :
somme,n = 0,1
while n !=
0:
n = eval(input())
somme += n
print("la somme des entiers saisis
vaut",somme)
Fin de ce chapitre
Félicitations
Structures conditionnelles et
itératives.
Sous-programmes.