HomeTortue graphiqueGPanelRobotique WebTigerPython
 Python - Online
Deutsch   English   Français   

7. Structure if-else

 

 

TU APPRENDS ICI...

 

à utiliser la structure if-else pour exécuter certains blocs de programme uniquement sous certaines conditions (de manière sélective).

 

 

EXEMPLES

 

La sélection commence par le mot-clé if, suivi d’une condition. Les instructions dans le bloc if ne sont exécutées que si la condition est vraie, sinon ce sont les instructions après else, donc dans le bloc else, qui sont exécutées.
Dans la condition if, on utilise généralement les opérateurs de comparaison >, >=, <, <=, ==, !=.
Les instructions dans les blocs if et else doivent être indentées. Le bloc else peut aussi être omis.

Example 1: Modifier la couleur des lignes
Si le point de départ d’une ligne a une coordonnée x négative, la ligne est dessinée en rouge, sinon en vert.

Programme:     

# Gp7a.py
from gpanel import *

makeGPanel(-30, 30, 0, 60)

x = -30
while x <= 30:
    if x <= 0:
        setColor("magenta")
    else:    
        setColor("cyan")
    line(0, 50, x, 0)
    x = x + 1
    delay(50)
Copy to clipboard
 




Example 2
: Pluie aléatoire
Dans un carré, 50 000 points sont choisis aléatoirement. Si un point se trouve à l’intérieur du cercle inscrit, il est dessiné en rouge, sinon en vert.
Comme le rayon du cercle est de 100, la condition pour les points intérieurs est : x² + y² < 100².
Le dessin d’un cercle dans la couleur correspondante à une position aléatoire est défini dans la fonction randomDot().

Programme:      

# Gp7b.py
from gpanel import *
from random import randint

def randomDot():
    x = randint(-100, 100)
    y = randint(-100, 100)
    if x * x + y * y < 10000:
        setColor("red")
    else:
        setColor("green")
    pos(x, y)            
    fillCircle(0.5)
    
makeGPanel(-100, 100, -100, 100)

i = 0
while i < 50000:
    randomDot()
    i = i + 1
Copy to clipboard
 

 

Example 3: Choix multiple
Avec la structure if-elif-else, tu peux vérifier plusieurs conditions successivement. Si la condition après if n’est pas remplie, les conditions après elif sont vérifiées l’une après l’autre. Si aucune condition n’est satisfaite, les instructions après else sont exécutées.
Un deux-points après chaque condition et une indentation correcte sont importants.
Dans cet exemple, les couleurs des petits cercles sont choisies en fonction de la valeur de leur coordonnée x.

Programme:      

# Gp7c.py
from gpanel import *

makeGPanel(0, 20, 0, 20)

x = 1
while x < 20:
    y = 1
    while y < 20:
        pos(x, y)
        if x < 5:
            setColor("red")
        elif x < 10:
            setColor("yellow")
        elif x < 15:
            setColor("green") 
        else:
            setColor("magenta")           
        fillCircle(0.5)
        y = y + 1
    x = x + 1
Copy to clipboard
 

 

Example 4: Combiner des conditions avec and
La condition combinée est vraie uniquement si les deux sous-conditions sont vraies.
Ici, les points rouges ne sont dessinés que si la coordonnée x de la tortue est supérieure à 5 et inférieure à 15.

Programme:     

# Gp7d.py
from gpanel import *

makeGPanel(0, 20, 0, 20)

x = 1
while x < 20:
    y = 1
    while y < 20:
        pos(x, y)
        if x > 5 and x < 15:
            setColor("red")       
        else:
            setColor("yellow")           
        fillCircle(0.5)
        y = y + 1
    x = x + 1
Copy to clipboard
 

 

 

À RETENIR...

 

Si la condition après if est vraie, le bloc de programme suivant est exécuté, sinon c’est le bloc après else.
Si le bloc else est absent, le programme continue avec la ligne suivante.
Pour un choix multiple, utilise la structure if-elif-else.

Les conditions peuvent être combinées avec and ou or : avec and, les deux conditions doivent être vraies ; avec or, au moins une des deux doit être vraie.

 

 

À FAIRE PAR TOI-MÊME

 

1)


Crée la figure ci-contre à l’aide de la structure if-else.

 


 

2)


Dessine 1000 lignes ayant leur point de départ au centre de la fenêtre et leur point d’arrivée à des positions aléatoires dans l’intervalle -100 à 100. Les lignes avec une coordonnée x positive sont rouges, les autres vertes.

 
 

3)


Dessine la figure ci-contre à l’aide de la structure if-else.