Aller au contenu

Les instructions conditionnelles⚓︎

Les opérateurs de comparaisons⚓︎

Opération Comparaison Exemple
x==y teste si x est égal à y 6==3**2 renvoie False
8==2**3 renvoie True
x!=y teste si x n'est pas égal à y 9!=9 renvoie False
9!=8 renvoie True
x<y teste si x est strictement inférieur à y 5<5 renvoie False
3>-5 renvoie True
x<=y teste si x est inférieur ou égal à y 2>=0 renvoie True
1>=1 renvoie True

Example

  1. Tester les comparaisons suivantes dans la console.
    • 153 > 98
    • (6 - 6) <= 0
    • 5 != 10 + 5
  2. Tester un encadrement :
    console
    >>> x = 35 * 47
    >>> 1000<= x <= 2000
    

Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier

Ne pas mélanger == avec l'opérateur d'affectation =

script A
1
2
3
a = 5
a = 15
print(a+2)

La ligne 2 modifie la valeur de a.
La ligne 3 affiche 17.

script B
1
2
3
a = 5
a == 15
print(a+2)

La ligne 2 renvoie False.
La ligne 3 affiche 7.

Je vérifie ma compréhension (bouton en bas pour recommencer)

  1. L'expression 3==5-2 s'évalue à :

    • True

    • False

    • on ne peut pas savoir

    • message d'erreur

  2. L'expression -5<=5-10 s'évalue à :

    • True

    • False

    • Oui

    • message d'erreur

  3. L'expression 3 != 5 s'évalue à :

    • True

    • False

    • Non

    • message d'erreur

  4. L'expression 20== '20' s'évalue à :

    • True

    • False

    • message d'erreur

  5. Soit le code suivant :
    1
    2
    3
    a = 5
    a == 14
    b = a + 1
    
    En fin de script b prend la valeur :

    • 6

    • 15

    • '51'

    • '141'

Tests de valeurs sur float⚓︎

Tests de valeurs sur des float

Lorsque l'on souhaite tester la valeur d'une variable de type float, le premier réflexe serait d'utiliser l'opérateur d'égalité comme : (exécuter le script)

Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier

Cette approche est déconseillée. Les valeurs de type float amènent certaines limitations.

Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier

Nous voyons que le résultat de l'opération 0.1+0.2 n'est pas exactement 0.3 d'où le False ! Ce problème vient de la manière dont un ordinateur traite les nombres flottants (comme rapport de nombres en binaires). Certaines valeurs de type float ne peuvent être qu'approchées :

Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier

La valeur 0.3 est en réalité arrondie à \(10^{-17}\) près ! De même, la valeur renvoyée par 0.1+0.2 est :

Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier

TLDR 1 : Ne surtout pas tester si des valeurs de type float sont égales.

Conseil

Pour les valeurs de type float on utilisera soit des encadrements :

Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier

soit l'instruction valeur absolue abs() :

Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier

Instructions conditionnelles simples⚓︎

syntaxe d'un test simple

Une structure conditionnelle simple comporte : - la clef de début if suivie d'un <test> qui prend les valeurs True ou Valse - le corps du test contient les actions à exécuter si la valeur de <test> est True.
Les instructions sont indentés (comme pour les fonctions) à l'aide de la touche ++Tab++ - la sortie de le la structure est signalée par l'absence d'indentation.

script python
if  <test> :    # (1)!
    action1() 
    action2()   # (2)!
action3()       # (3)! 
  1. ⚠ Les deux points sont obligatoires

  2. ⚠ action1() et action2() sont exécutées si la condition <test>==True

  3. ⚠ action3() sera faite ensuite dans tous les cas.

un premier exemple

  1. Exécuter le script ci-dessous et vérifier que la ligne 3 n'est pas exécutée.
  2. Modifier la ligne 1 afin d'affecter la valeur 20. Vérifier que les lignes 3 et 4 sont exécutées.

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : 5/5

.128013m8ztV;)v3( o0gr/=ésedkicf:nhpulPyabS41q2050v0u0e0I0x0F0t0l0y0F0I0t0t0r010e0x0D010406050t0E0b0b0I0p0H040K0m0F0E0)0m0B050q0:0=0@0_0.0D040519121c0q190.0v0x0i0X0Z0#0%0C0x0o0C0F1q0C0e0,050S0J0F0u1l0!0$011p1r1t1r0e1z1B1x0e0p1a0e0C0X0|0t0D0I0B0%0O011D1n010z0U0u0B0I0b0u1x1W1Y1%1F1*1B1-1/0,0a0l0G0p0m0D0m0t0x0 0B0l0Q1U0p0p0u0y27121=0B1a0q1S2k1P1R1Q1y0v1@0%1t0B1,241x1i1k0Y1E2u0x2w0B0m2A1x0D2d1a2i2k2O0/1X282C1(2H0p0?0F0,0M2h2S0-2R1?2U1F2W2Y0,0O2$1Y2(2i2t012-0I2Z040j2;2j0.2@2+0%2`2|0L2 2k2L0u2k2A2n0v1R2s33010y2I1:1a3d1b2M2)2j38053k0Q2N2S2^0B0,0I0o0u380l3r2^0m0,0r3F3H3i0b0x2/0n38313y3i0w0,0x0z3M321m2,3B3D3#3V3%0%3J04020o0e0g3L132%3G3$2D013P2!0c3+2*3-010+040A3F0l4a064a4a3N440B0J0,2L2F0e3t3|1(460k4n3,3}0t1#3:0N0E0m3?0f0m0E0W230E0i0u0d0l0i4A0u0p024y4A0g4s433}460h3F3U4V2V4i044k0B4m3_2=4f4W0,4r4,3s4o1F4v0,4Q4z4B4D0W0m0J0t4O4I2d4K1B0l0p0s0:0F0S0e4{4S4U2T444X3T123v3b1d3q0q3o2l3f122o5v0I1A5o5r1j2(5r0R0T0V04.

importance de l'indentation

Comparer les scripts A et B ci-dessous. Quel script exécutera la ligne 4 ?

1
2
3
4
chaine = "bateau"
if len(chaine) < 6 :
    print("trop court") 
print("suite")
1
2
3
4
chaine = "bateau"
if len(chaine) < 6 :
    print("trop court") 
    print("suite")
Solution

Comme chaine=="bateau", len(chaine)==6.
Le test len(chaine) < 6 a pour valeur False.
Le script A exécute toujours la ligne 4 car elle ne fait pas partie de l'instruction conditionelle.
Le script B n'exécute pas la ligne 4 car elle fait partie du bloc de l'instruction conditionelle.

controler le déroulement (1)

1
2
3
4
5
6
a = 10
b = 13
if a > 5:
    b = b - 4
if b >= 11:
    b = b + 10

Quelle est la valeur de b en fin de script ?

  • 13
  • 9
  • 19
  • 23
  • ❌ 13 Faux car 10 > 5. La ligne 4 et donc exécutée.
  • ✅ 9
  • ❌ 19
  • ❌ 23 Faux car à la ligne 4 on a une nouvelle affectation de b qui ne respecte plus la condition du if de la ligne 5.

controler le déroulement (2)

script python
1
2
3
4
5
6
a = 5
b = 14
if a > 9:
    b = b - 1
    if b >= 10:
        b = b + 8

Quelle est la valeur de b en fin de script ?

  • 13
  • 14
  • 21
  • 22

Le test de la ligne 5 - ❌ 13 Faux car 10 > 5. La ligne 4 et donc exécutée. - ✅ 9 - ❌ 19 - ❌ 23 Faux car à la ligne 4 on a une nouvelle affectation de b qui ne respecte plus la condition du if de la ligne 5.

Je vérifie ma compréhension (bouton en bas pour recommencer)

  1. Soit le script suivant :
    1
    2
    3
    4
    a = 3
    if 1 < 2:
        a = 1
    b= a + 3 
    

    En fin de script, la variable b prend la valeur :

    • 1

    • 4

    • 6

    • 7

  2. Soit le script suivant :
    1
    2
    3
    4
    5
    a , b = 5 , 9
    if a>6:
        b=b-5
    if b>=13:
        b=b+9
    

    En fin de script, la variable b prend la valeur :

    • 4

    • 9

    • 13

    • 18

  3. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    a = 10 
    b = 19 
    if a>6:
        b=b-4
    if b>=14:
        b=b+7
    

    En fin de script, la variable b prend la valeur :

    • 15

    • 19

    • 22

    • 26

  4. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    a = 4 
    b = 15 
    if a > 9 :
        b = b-4
    if b >= 12:
        b = b+5
    

    En fin de script, la variable b prend la valeur :

    • 11

    • 15

    • 16

    • 20

  5. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    a = 9 
    b = 20  
    if a > 7 :
        b = b-10
    if b >= 12:
        b = b+4
    

    En fin de script, la variable b prend la valeur :

    • 10

    • 14

    • 20

    • 24

  6. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    a = 5 
    b = 18  
    if a > 7 :
        b = b-10
    if b >= 12:
        b = b+4
    

    En fin de script, la variable b prend la valeur :

    • 8

    • 12

    • 18

    • 22

Instructions conditionnelles classiques⚓︎

syntaxe d'une structure conditionnelle classique

  • la clef de début if suivi d'un <test> qui prend les valeurs True ou Valse
  • la clef else suivi d'un :
  • la sortie de le la structure est signalée par l'absence d'indentation.
script python
1
2
3
4
5
6
7
8
9
if  <test> :  # (1)!
    """ bloc indenté exécuté uniquement lorsque <test>==True """
    action_1()
    action_2() 
else :  # (2)!
    """ bloc indenté exécuté uniquement lorsque <test>==False """
    action_3() 
    action_4() 
action_5() # non indenté et après l'instruction conditionnelle, sera exécuté dans tous les cas.
  1. ⚠ deux points obligatoires
  2. ⚠ deux points obligatoires

Example

  1. Exécuter le script ci-dessous et vérifier qu'il affiche "Vous pouvez voter" et Vous observerez le résultat
  2. Modifier la valeur de age pour la valeur \(15\). Qu'affiche le script ?

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : 5/5

.128013m8ztV;)v3( ogr/=ésedki6cf:nhpulPyabS41q25050u0t0e0I0w0F0s0l0y0F0I0s0s0q010e0w0D010406050s0E0b0b0I0o0H040K0m0F0E0*0m0B050p0;0?0^0`0/0D04051a131d0p1a0/0u0w0i0Y0!0$0(0C0w0n0C0F1r0C0e0-050T0J0F0t1m0#0%011q1s1u1s0e1A1C1y0e0o1b0e0C0Y0}0s0D0I0B0(0O011E1o010z0V0t0B0I0b0t1y1X1Z1(1G1+1C1.1:0-0a0l0G0o0m0D0m0s0w100B0l0R1V0o0o0t0y28131?0B1b0p1T2l1Q1S1R1z0u1^0(1u0B1-251y1j1l0Z1F2v0w2x0B0m2B1y0D2e1b2j2l2P0:1Y292D1)2I0o0@0F0-0M2i2T0.2S1@2V1G2X2Z0-0O2%1Z2)2j2u012.0I2!040j2=2k0/2^2,0(2{2}0L302@2T2_360-0P39323b342`0m2Y2|0-0x391e2N132B2o0u1S2t3j0y2J1;1b3u1c3s2R142(053A0R2O3i1n2-0-0I0n0t390l2*2U3P0(0m0-0q3V3X2_0b0w2#3f3I2?3h2+3Z010v0-0w0z3(333?0B3R3T3|3O2E013#04020n0e0g3%3/2k3W3}443+2#0c423=440,040A3V0l4s064s4s3)3j0B0J0-2M2G0e3q4g1)4o0k4F431)0s1$470N0E0m4a0f0m0E0X240E0i0t0d0l0i4S0t0o024Q4S0g4K4m4H0-0h3V3;3Y443^040t0W3U4d044f4L1G4o4q514v0l4u4v4x3~4A044C0B4E515d4n0-4J5k4G1G4N0-4,4R4T4V0X2x0l4Y4!4$1Y0X4(0e4*5u4.4:4`4=044@584_3c5f5h5j2R5q0(4I5L2_5s4P5v0g4U4W0l0m0J0s4*4!2e4$1C0l0o0r0;0F0T0e5J4a5!3j4o5P2P0/0p3L0t2l2M693t1k3v2o2r2m0I1B6c0p3u660R0T0V0s04.

Je vérifie ma compréhension (bouton en bas pour recommencer)

  1. Soit le script suivant :
    1
    2
    3
    4
    5
    a=-1
    if a<=5:
        a=a+11
    else:
        a=a-11
    

    En fin de script, la variable a prend la valeur :

    • -12

    • -1

    • 10

    • 12

  2. Soit le script suivant :
    1
    2
    3
    4
    5
    a=5
    if a<=2:
        a=a+5
    else:
        a=a-3
    

    En fin de script, la variable a prend la valeur :

    • 2

    • 5

    • 7

    • 10

  3. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    7
    a=21
    if a>=20:
      a=a-18
      if a<=4:
        a=a+4
      else:
        a=a-4
    

    En fin de script, la variable a prend la valeur :

    • -1

    • 7

    • 21

    • 35

  4. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    7
    a=25
    if a>=12:
      a=a-11
      if a<=6:
        a=a+3
      else:
        a=a-3
    

    En fin de script, la variable a prend la valeur :

    • 11

    • 17

    • 25

    • 33

  5. Soit le script suivant :
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    a = 5
    b = 9
    if a>=0 :
        b=b-7
    else :
        b=b+7
    if b>0 :
        a=a+3
    else :
        a=a-3
    

    En fin de script, la variable a prend la valeur :

    • 2

    • 5

    • 8

    • 9

  6. Soit le script suivant :
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    a = -10
    b = -15 
    if a >= 0 :
        b = b - 2
    else:
        b = b + 2
    if b > 0 :
        a = a + 6
    else:
        a = a - 6
    

    En fin de script, la variable a prend la valeur :

    • -17

    • -16

    • -13

  7. Soit le script suivant :
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    a = 7
    b = 0 
    if a >= 0 :
        b = b - 7
    else:
        b = b + 7
    if b > 0 :
        a = a + 9
    else:
        a = a - 9
    

    En fin de script, la variable a prend la valeur :

    • -7

    • -2

    • 7

    • 16

  8. Soit le script suivant :
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    a = 10
    b = 6 
    if a % 2 == 1 :
        b = b - 7
    else:
        b = b + 7
    if b % 3 == 2 :
        a = a + 9
    else :
        a = a - 9
    
    On rappelle que x%n (lire \(x\) modulo \(n\)) est le reste de la division de x par n.

    En fin de script, la variable a prend la valeur :

    • 1

    • 6

    • 10

    • 19

Instructions conditionnelles avec plusieurs cas⚓︎

syntaxe d'une structure conditionnelle avec plusieurs cas

  • la clef de début if suivi d'un <test> qui prend les valeurs True ou Valse
  • le(s) clef(s) elif (pour sinon si) suivies d'un :
  • la clef else suivie d'un :
  • la sortie de le la structure est signalée par l'absence d'indentation.
script python
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
if  <test1> :  # (1)!
    """ bloc indenté exécuté uniquement 
    lorsque <test1>==True """
    action_1()
elif <test2> :  # (2)!
    """ bloc indenté exécuté uniquement 
    lorsque <test1>==False et <test2>==True"""
    action_2() 
elif <test3> :  # (3)!
    """ bloc indenté exécuté uniquement 
    lorsque <test1>==False et <test2>==False et <test3>==True""""
    action_3() 
elif <test4> :  # (4)!
    """ bloc indenté exécuté uniquement 
    lorsque <test1>==False et <test2>==False et <test3>==False et <test4>==True""""
    action_4() 
else : # (5)!
    """ bloc indenté exécuté uniquement 
    lorsque <test1>==False et <test2>==False et <test3>==False et <test4>==False""""
    action_5() 
action_6()  # non indenté et après l'instruction conditionnelle, 
            # sera exécuté dans tous les cas.
  1. ⚠ deux points obligatoires
  2. ⚠ deux points obligatoires
  3. ⚠ deux points obligatoires
  4. ⚠ deux points obligatoires
  5. ⚠ deux points obligatoires

  6. Le nombre de parties elif est quelconque.

  7. La partie else n'est pas obligatoire.
    ⚠ Si la clef else : n'est pas utilisée, et si la valeur de tous les tests est False, alors l'instruction conditionnelle n'exécute aucun des blocs.

triangles rectangles

  1. Exécuter le script et vérifier qu'il affiche que le triangle est rectangle en \(C\).
  2. On considère le nouveau triangle \(ABC\) tel que \(AC=13\), \(AB=5\) et \(BC=12\). Modifier le scirpt afin de faire afficher la nature du nouveau triangle.

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : 5/5

.1280139m8tA;)v3( ,o*0gr7/=sedki6cf:nhCBpulPyabS41q25+050x0w0e0N0z0K0v0l0B0K0N0v0v0u010e0z0I010406050v0J0c0c0N0r0M040P0n0K0J0:0n0E050t0`0|0~100^0I04051g191j0t1g0^0x0z0i0(0*0,0.0F0z0q0F0K1x0F0e0?050Z0O0K0w1s0+0-011w1y1A1y0e1G1I1E0e0r1h0e0F0(130v0I0N0E0.0T011K1u010C0#0w0E0N0c0w1E1%1)1.1M1;1I1@1_0?0a0l0L0r0n0I0n0v0z160E0l0X1#0r0r0w0B2e191|0E1h0t1Z2r1W1Y1X1F0x1~0.1A0E1?2b1E1p1r0)1L2B0z2D0E0n2H1E0I2k1h2p2r2V0_1(2f2J1/2O0r0}0K0?0l0R2o2Z0@2Y1}2#1M2%2)2+0T2.1)2:2p2A012^0N2*040l0j2|2q0^2 2?0.32340l0Q382~2Z303e2+0U3i3a3k3c310n2(332+0A3p2;2!1t2@3u2_350s3z3b3C3d3E3w350d3I3r3K3t3v3f0b3Q2=3S3m040R0p3X3B2K3T3F0R2-1a2/3q3Y3*3!0R2{3/2}1k2T192H2u0x1Y2z3s0B2P1`1h3 1i3}2X3`2q05450X2U3R3?0?0f0G3i0l3A300n0?0u4o4q3s0c0z0?0R374d3j3=2$4l0H4v3J3*4s044u4D4p4K1/4y0?3o4D3;3)4G040H4n4P4w3S4M4O2V4Q4j4S4z3#3_2V4X3l0O0?2S2M0e3i4(3*0=040k4~4R1M0v1,04020S0J0n0e0g0f0H0l0u0l5a5c5e544.1M510m4J5p3d4l4$2X550.5r5t4F56585l5d5f0G5i5k5b5H5o5D5A0?5s4%5z315w5O4Y5q5R5C5Y0.570?5G5e4#5K5*0g5X305B5T5u5V4!5x2/4 1/510h3(300y0?0z0C5#3l4H5:3s4M0o0o693S4T044=2/4-5P014*4+6j5|2@5W4D6q0.6b6d6t5U6g6i2}6k5$6m0?0V663s0E0?4#6e4L0?6c6N4/0?6B2q0l6D5;0?0D3p6W6W6u314_044{0E4}6y5@51536/6l5(595M5e5g5J0w0v0e0l0J2f1W0z1)0q1I0l2k2m76781?0l0G5.6R5Z045 4W6(62040w1A655?6l6K044m7i6v6P6x5y5@6A6I4)4t6o6C6(7v5g7y6F046Q6?6E7E7t6E4M6H7U675_7N6w7N7T4,6(516!4W6$6X6J6*6,6.7C6l6;7N6^5.6|0l6~70720l747c1J7a0Z0E771J7e0H7h7R6Y7k603s7o7q647F4k7!8e6a7A7%4:6U356(6n8m4Z7M8p7G7P7B5{6z8t8y1M7W8I5v7w5`3{5U7$8B3*7(6p5U7+6#6$7K7;0r4|7N7_8S1/7{6`5f5,7 71738$84792l87897~2f0f8d7@6E5~8h3S8j0$0w8L018X7-8Z5U0E8#8%8*7j6=90308,5m0g788388780E02030j0b0g8:1(0%86848 8F6:0?7l4?194g0w2r2S9M3~1q402u2x2s0N1H9P0t3 0^9Z0Y0!0$04.

⚠ Si <test1>==True et <test3>==True, l'instruction exécute action_1() et ignore le reste des tests pour exécuter action_6()

Je vérifie ma compréhension (bouton en bas pour recommencer)

  1. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    7
    8
    a = 10
    b = -11
    if a >= 0:
        a = b - 3
    elif b < 0:
        a = a + 3
    else:
        a = a - 3
    

    En fin de script, la variable a prend la valeur :

    • -11

    • -14

    • 7

  2. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    a = -20
    b = -7
    c = -2
    if a > b:
        d = a
    elif b > c:
        d = b
    else:
        d = c
    

    En fin de script, la variable ```d``` prend la valeur :
    

    • -20

    • -7

    • -2

  3. Soit le script suivant :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    a = 10
    b = 19
    c = -15
    if a > b:
        d = a
    elif b > c:
        d = b
    else:
        d = c
    

    En fin de script, la variable ```d``` prend la valeur :
    

    • 10

    • 19

    • -15


  1. too long; didn’t read pour trop long; pas lu.