Questions : instructions conditionnelles
Question 1
Question
Après exécution du programme suivant, quelle serait la valeur affichée ?
nb = 15
if nb % 2 == 0 :
nb = nb * 5
else:
nb = nb * 2
print(nb)
- 15
- 30
- 75
- 150
- 15
- 30
- 75
- 150
L'expression de la clause if
, nb % 2 == 0
, a pour valeur False
quand nb
vaut 15.
L'instruction exécutée est donc nb = nb * 2
, ce qui affecte à nb
la valeur 30.
Question 2
Question
Après exécution du programme suivant, quelle serait la valeur affichée ?
nb = 15
if nb % 2 == 0 :
nb = nb * 5
elif nb % 5 == 0:
nb = nb * 2
else:
nb = nb * 3
print(nb)
- 30
- 45
- 75
- 150
- 30
- 45
- 75
- 150
L'expression de la clause if
, nb % 2 == 0
, a pour valeur False
quand nb
vaut 15.
L'expression de la clause elif
, nb % 5 == 0
, a pour valeur True
quand nb
vaut 15. L'instruction exécutée est donc nb = nb * 2
, ce qui affecte à nb
la valeur 30.
Question 3
Question
Après exécution du programme suivant, quelle serait la valeur affichée ?
nb = 12
if nb % 2 == 0 :
nb = nb * 5
if nb % 5 == 0:
nb = nb * 2
else:
nb = nb * 3
print(nb)
- 24
- 36
- 60
- 120
- 24
- 36
- 60
- 120
L'expression de la clause du premier if
, nb % 2 == 0
, a pour valeur True
quand nb
vaut 12. L'instruction nb = nb * 5
est donc exécutée, ce qui affecte à nb
la valeur 60.
L'expression de la clause du second if
, nb % 5 == 0
, a pour valeur True
quand nb
vaut 60. L'instruction nb = nb * 2
, est donc aussi exécutée, ce qui affecte à nb
la valeur 120.
Cet exemple montre qu'il faut attentivement distinguer les instructions if … elif
des instructions if
successives.