Instructions conditionnelles = if elif else
Méthode : Utilisation
instruction test:
Exemple :
1
if a==b :
2
else :Fondamental : Indentation
---Toutes les instructions à effectuer devront être décalées vers la droite de la même façon = indentation
1 niveau d'indentation = 1 bloc
Syntaxe : Si simple : 1 seul test if... (avec ou sans else...)
1
achats=int(input('Total achats ? ')) # déclaration de la variable achats,
2
# attente d'une entrée de type int/integer/entier3
4
prix=achats # déclaration et initialisation
5
# de la variable prix de valeur achats (par défaut)6
7
if achats>100: # Bloc 1 : achats > 100 ?
8
prix=achats-achats*10/100 # Si Oui réduction de 10%
9
# la valeur de prix devient achats-achats*10/10010
11
print('Prix à payer = ', prix)
ou
1
achats=int(input('Total achats ? ')) # déclaration de la variable achats,
2
# attente d'une entrée de type int/integer/entier3
4
if achats>100: # Bloc 1 : achats > 100 ?
5
prix=achats-achats*10/100 # Si Oui déclaration et initialisation
6
# de la variable prix de valeur achats-achats*10/1007
else: # Sinon Bloc 2 :
8
prix=achats # déclaration et initialisation de la variable prix de valeur achats
9
10
print('Prix à payer = ', prix)
1
achats=int(input('Total achats ? ')) # déclaration de la variable achats, attente d'une entrée
2
3
if achats<=100: # Bloc 1 : achats <= 100 ?
4
prix=achats # déclaration et initialisation de la variable prix de valeur = achats par défaut
5
else: # Sinon Bloc 2 :
6
prix=achats-achats*10/100 # déclaration et initialisation
7
# de la variable prix de valeur = achats-achats*10/1008
9
print('Prix à payer = ', prix)
Exemple :
Les 3 programmes suivant produisent des résultats identiques.
Seulement, le changement d'instructions amène des modifications dans l'organisation du programme.
Syntaxe : Si imbriqués : plusieurs tests if...
1
achats=int(input('Total achats ? ')) # déclaration de la variable achats, attente d'une entrée
2
prix=achats # déclaration et initialisation de la variable prix (valeur = achats par défaut)
3
4
if achats>100: # Bloc 1 : achats > 100 ?
5
prix=achats-achats*10/100 # Si Oui réduction de 10%
6
# la valeur de prix devient achats-achats*10/100 7
if achats>200: # Bloc 2 (fait partie du bloc 1) : achats > 200 ?
8
prix=achats-achats*20/100 # Si Oui réduction de 20%
9
# la valeur de prix devient achats-achats*20/100 10
11
print('Prix à payer = ', prix)
Syntaxe : if ... else...
1
achats=int(input('Total achats ? ')) # déclaration de la variable achats, attente d'une entrée
2
3
if achats>100: # Test 1 : achats > 100 ?
4
prix=achats-achats*10/100 # Si Oui Bloc 1 :
5
# réduction de 10% 6
# la valeur de prix devient achats-achats*10/100 7
else: # Sinon Bloc 2 :
8
if achats>200: # Test 2 : achats > 200 ?
9
prix=achats-achats*20/100 # Si Oui Bloc 3 (fait partie du Bloc 2) :
10
# réduction de 20% 11
# la valeur de prix devient achats-achats*20/10012
else: # Sinon Bloc 4 (fait partie du Bloc 2) :
13
prix=achats # prix devient achats
14
15
print('Prix à payer = ', prix)
Syntaxe : if ... elif ...else...
1
achats=int(input('Total achats ? ')) # déclaration de la variable achats, attente d'une entrée
2
3
if achats>200: # Test 1 : achats > 100 ?
4
prix=achats-achats*20/100 # Si Oui au Test 1 Bloc 1 :
5
# réduction de 10% 6
# la valeur de prix devient achats-achats*10/100 7
elif achats>100: # Sinon Test 2 : achats > 200 ?
8
prix=achats-achats*10/100 # Si Oui au Test 2 Bloc 2 : réduction de 20%
9
# la valeur de prix devient achats-achats*20/100 10
else: # Sinon :
11
prix=achats # Bloc 3 (fait partie du bloc 2)
12
# la valeur de prix devient achats13
14
print('Prix à payer = ', prix)

