Objectifs
- Comprendre et savoir utiliser les structures conditionnelles if, if…else et if…elif…else en Python dans Python.
Présentation
- Une structure de contrôle conditionnelle permet à un programme de modifier son traitement en fonction d'une
condition. Cette condition n'est qu'une expression qui renvoie une valeur vrai ou faux - Une structure de contrôle est un ensemble d’instructions qui permet de contrôler l’exécution du code.
- Le test par "if" est le premier outil de sélection en Python. Le test "if" avec ses autres blocs permettent de choisir une partie du code à effectuer parmi d'autres. Le choix se fait par une opération logique.
- L'instruction "if" en Python peut comporter plusieurs tests conditionnels "elif", et se termine par un bloc optionnel "else". Le bloc qui sera exécuté sera le premier dont la condition est vraie, sinon le "else", qui ne comporte aucune condition, sera exécuté.
- Python nous fournit les structures conditionnelles suivantes :
- La condition
if("si") ; - La condition
if…else("si…sinon") ; - La condition
if…elif…else("si…sinon si… sinon") .

- Une structure de contrôle conditionnelle permet à un programme de modifier son traitement en fonction d'une
La condition
ifen PythonPrésentation
- La condition
ifen Python est la déclaration de prise de décision la plus simple. Il est utilisé pour décider si une certaine instruction ou un bloc d'instructions sera exécuté ou non, c'est-à-dire si une certaine condition est vraie, alors un bloc d'instruction est exécuté sinon.
L’instruction
if("si") est associée à une expression terminée par le caractère :. Chaque élément de l’expression est évalué tour à tour. Si l’expression évaluée renvoieFalse, l’interpréteur n’exécute pas le contenu de la structure. Dans le cas où l’évaluation de l’expression renvoiTrue, le bloc est exécuté.- La condition
Syntaxe et organigramme

Exemple:
- Ecrire un programme Python qui permet de :
- Saisir un entier x.
- Afficher le message "racine carré existe", si x est positif
x=int(input("Donner un entier: ")) if x>0: print("Racine carré existe")
- Ecrire un programme Python qui permet de :
La condition
if… elseen PythonPrésentation
- L'instruction if seule nous dit que si une condition est vraie, elle exécutera un bloc d'instructions et si la condition est fausse, elle ne le fera pas. Mais que faire si nous voulons faire autre chose si la condition est fausse. Nous pouvons utiliser l' instruction else avec l'instruction if pour exécuter un bloc de code lorsque la condition est fausse.
Syntaxe et organigramme

Exemple:
- Ecrire un programme python qui permet de saisir la moyenne générale d'un apprenant puis affiche la décision
- Succès:si la moyenne >=15
- Echec: si la moyenne <15
moyenne=float(input("Saisir la moyenne générale: ")) if moyenne>=15: print("Succès") else: print("Echec")
- Ecrire un programme python qui permet de saisir la moyenne générale d'un apprenant puis affiche la décision
La condition
if… elif… elseen PythonPrésentation
- La condition
if…elif…else("si…sinon si…sinon") est une structure conditionnelle encore plus complète que la condition if…else qui vannons permettre cette fois-ci d’effectuer autant de tests que l’on souhaite et ainsi de prendre en compte le nombre de cas souhaité. - Pour cette instruction (
if… elif… else), un utilisateur peut choisir entre plusieurs options. Les instructions if sont exécutées de haut en bas. Dès qu'une des conditions contrôlant l'if est vraie, l'instruction associée à l'if est exécutée et le reste de l'échelle est contourné. Si aucune des conditions n'est vraie, alors la dernière instruction else sera exécutée.
- La condition
Syntaxe et organigramme

Exemple:
variable_de_verification = int(input("Donner un entier paire entre 2 et 20: ")) if (variable_de_verification == 2): print ("La variable de vérification est: 2") elif (variable_de_verification == 4): print ("La variable de vérification est: 4") elif (variable_de_verification == 6): print ("La variable de vérification est: 6") elif (variable_de_verification == 8): print ("La variable de vérification est: 8") elif (variable_de_verification == 10): print ("La variable de vérification est: 10") elif (variable_de_verification == 12): print ("La variable de vérification est: 12") elif (variable_de_verification == 14): print ("La variable de vérification est: 14") elif (variable_de_verification == 16): print ("La variable de vérification est: 16") elif (variable_de_verification == 18): print ("La variable de vérification est: 18") elif (variable_de_verification == 20): print ("La variable de vérification est: 20") else: print ("La variable de vérification n'est pas present")
Ne pas oublier

Applications
App01
Énoncé
- Soit un nombre entier aléatoire: 918653278482.
- Tout d'abord, on doit savoir :
- Est-il divisible par 17?
- At-il plus de 12 chiffres?
- Si ces deux conditions sont remplies, afficher le message "Le nombre est Super divisible sur 17."
- Puis, si l'une des conditions est fausse, effectuer un deuxième test dessus:
- Est-il divisible par 13?
- At-il plus de 10 chiffres?
- Si ces deux nouvelles conditions sont remplies, afficher le message "Le nombre est divisible sur 13."
- Enfin, si le numéro d'origine n'est pas classé comme "Super divisible sur 17" ni "divisible sur 13", alors je vais simplement afficher: "Ok, c'est juste un nombre aléatoire moyen".
Solution
App02
Énoncé
- Écrire un programme min_max.py, qui demande de saisir 2 valeurs et qui affiche la plus petite des 2 valeurs.
Solution
valeur1= int(input("Valeur 1 : ")) valeur2= int(input("Valeur 2 : ")) if ( valeur1 < valeur2 ) : print ("Valeur la plus petite : %d " % valeur1) else: print ("Valeur la plus petite : %d" % valeur2)
App03
Énoncé
- Écrire un script longeur_chaine.py, qui demande de saisir 2 chaînes de caractères et qui affiche la plus grande des 2 chaînes (celle qui a le plus de caractères).
Solution
chaine1= input("Chaîne 1 : ") chaine2= input("Chaîne 2 : ") if ( len(chaine2) > len(chaine1) ) : print (("Chaîne la plus grande : " + chaine2 )) else: print (("Chaîne la plus grande : " + chaine1 ))
App04
Énoncé
- Écrire le script multiple3.py qui affiche en fonction d’une valeur saisie l’un des messages suivants :
- "Ce nombre est pair"
- "Ce nombre est impair, mais est multiple de 3"
- "Ce nombre n’est ni pair ni multiple de 3"
- Écrire le script multiple3.py qui affiche en fonction d’une valeur saisie l’un des messages suivants :
Solution
nombre = int (input("Nombre : ")) modulo3 = nombre%3 modulo2 = nombre%2 if modulo2 == 0 : print ("Ce nombre est pair") elif modulo3 == 0 : print ("Ce nombre est impair, mais est multiple de 3") else : print ("Ce nombre n'est ni pair ni multiple de 3")