Livre_silo 30 août 2013 16:32 Page 89
¨
©
¨
©
¨
©
¨
©
C o p y r i g h t E y r o l l e s
89
4 – Instructions : langage minimal de l’algorithmique
mais celui-ci ne l’est pas :
if x != 0:
y = 3
y = y // x
Lorsque l’on tente de le faire exécuter par Python, on obtient l’erreur suivante :
File ``fichier.py'', line 3
y = y // x
^
IndentationError: unexpected indent
La première instruction qui suit une instruction conditionnelle et qui est placée au même
niveau d’indentation que l’instruction if marque la fin du bloc. En effet, seules les instructions indentées font partie du bloc.
Ici, la dernière instruction s’exécute toujours après le if :
if x != 0:
y = 3
y = y // x
En cas de if au sein d’un if, le second bloc doit avoir un niveau d’indentation encore
supérieur. Par exemple :
if x != 0:
y = x * x
if y % 2 == 0:
y = y + 1
x = x + y
Là, l’instruction y = y + 1 n’ est exécutée que si la seconde condition est vérifiée en plus de
la première.
Exercice 4.5 Quel est le résultat de l’exécution des instructions suivantes dans l’état
. .
0 .
a
. .
2 .
b
. .
1 .
c
?
if a == 0:
b = 4
else:
c = 5
b = 1
et
if a == 0:
b = 4
else:
c = 5
b = 1
¨
©
¨
©
¨
©
¨
©
C o p y r i g h t E y r o l l e s
89
4 – Instructions : langage minimal de l’algorithmique
mais celui-ci ne l’est pas :
if x != 0:
y = 3
y = y // x
Lorsque l’on tente de le faire exécuter par Python, on obtient l’erreur suivante :
File ``fichier.py'', line 3
y = y // x
^
IndentationError: unexpected indent
La première instruction qui suit une instruction conditionnelle et qui est placée au même
niveau d’indentation que l’instruction if marque la fin du bloc. En effet, seules les instructions indentées font partie du bloc.
Ici, la dernière instruction s’exécute toujours après le if :
if x != 0:
y = 3
y = y // x
En cas de if au sein d’un if, le second bloc doit avoir un niveau d’indentation encore
supérieur. Par exemple :
if x != 0:
y = x * x
if y % 2 == 0:
y = y + 1
x = x + y
Là, l’instruction y = y + 1 n’ est exécutée que si la seconde condition est vérifiée en plus de
la première.
Exercice 4.5 Quel est le résultat de l’exécution des instructions suivantes dans l’état
. .
0 .
a
. .
2 .
b
. .
1 .
c
?
if a == 0:
b = 4
else:
c = 5
b = 1
et
if a == 0:
b = 4
else:
c = 5
b = 1
