Cours Python - Chapitre 3 - Structures de contrôle PDF

Document Details

TranquilLitotes5217

Uploaded by TranquilLitotes5217

Pr. O.IBRIHICH

Tags

python programming conditional statements loops programming

Summary

This document provides an introduction to conditional and iterative structures in Python programming. It explains sequential structures, conditional statements (if-else), and iterative statements (loops). Key concepts like boolean expressions are covered using examples.

Full Transcript

Chapitre 3 Structures de contrôle : condition- nelles et répétitives 3.1 Introduction En programmation procédurale comme en algorithmique, l’ordre des instruc- tions est primordial. Le processeur exécute les instructions dans l’ordre dans lequel elles apparaiss...

Chapitre 3 Structures de contrôle : condition- nelles et répétitives 3.1 Introduction En programmation procédurale comme en algorithmique, l’ordre des instruc- tions est primordial. Le processeur exécute les instructions dans l’ordre dans lequel elles apparaissent dans le programme, on dit que l’exécution est sé- quentielle. Une fois que le programme a fini une instruction, il passe à la suivante. Tant qu’une instruction n’est pas terminée, il attend avant de conti- nuer. Les structures de contrôle décrivent l’enchaînement des instructions. Elles sont réparties en trois catégories : Structures séquentielles, Structures conditionnelles, Structures répétitive. 3.2 Les structures séquentielles 3.2.1 Définition Définition - Une instruction séquentielle est une instruction ou une série d’instructions qui sont exécutées de manière séquentielle, c’est-à-dire les unes après les autres, dans l’ordre dans lequel elles apparaissent dans le programme. - Lorsque le programme s’exécute, chaque instruction séquentielle est exécutée l’une après l’autre, sans sauter ou réorganiser leur ordre. 55 Chapitre 3 Structures de contrôle : conditionnelles et répétitives 56 q L’exécution séquentielle est la base de l’algorithme, car elle permet de décrire un processus ou une série d’étapes dans un ordre logique et cohérent. q Les instructions séquentielles sont utilisées pour spécifier comment un problème doit être résolu étape par étape, en suivant un flux de contrôle linéaire. q Une instruction se termine toujours par ’ ;’. 3.2.2 La syntaxe Syntaxe en algorithmique Début Instruction 1 ; Instruction 2 ;....... Instruction n ; Fin Exemple 3.1 Écrire un algorithme qui calcul la surface d’un rectangle Algorithm 3.1 : Algorithme Surfaces 1 Variables : longueur, largeur, Surface : Entier 2 Début 3 Ecrire ("donner les cotes du rectangle") ; 4 Lire (longueur, largeur) ; 5 Surface ← Langueur* largeur ; 6 Ecrire (Surface) ; 7 Fin 3.3 Les structures conditionnelles 3.3.1 Définitions Définition - Les structures conditionnelles, ne permettent d’exécuter certaines instructions, que sous certaines conditions. - Une condition (expression conditionnelle ou logique) est évaluée, c’est à dire Pr. O.IBRIHICH Informatique 1 Chapitre 3 Structures de contrôle : conditionnelles et répétitives 57 qu’elle est jugée vraie ou fausse. - Si elle est vraie, un traitement (une ou plusieurs instructions) est réalisé ; si la condition est fausse, une autre instruction va être exécutée, et ensuite le programme va continuer normalement. Définition d’une condition - Une condition est une expression écrite entre parenthèse à valeur booléenne. - Les instructions conditionnelles servent à n’exécuter une instruc- tion ou une séquence d’instructions que si une condition est vérifiée. q En programmation, on est souvent confronté à des situations ou on a besoin de choisir entre 2 ou plusieurs traitements selon la réalisation ou non d’une certaine condition d’où la notion de traitement conditionnel. q On distingue deux structures de traitement conditionnel à savoir : Structures conditionnelles simples ou à choix multiple. 3.3.2 Structures conditionnelles simples En algorithmique 1. Forme simple : Si.......Alors.....Finsi Dans cette forme, la condition est évaluée. Si elle vaut vrai alors c’est la séquence d’instructions 1 qui est exécutée sinon c’est l’instruc- tion qui suit l’instruction conditionnelle dans l’algorithme qui est exécutée. Syntaxe en algorithmique Si alors Instructions 1 ; Finsi Format Pseudo-code Pr. O.IBRIHICH Informatique 1 Chapitre 3 Structures de contrôle : conditionnelles et répétitives 58 Figure 3.1 – Format Organigramme du si Exemple 3.2 Exemples de test simple : Donner la valeur absolue d’un réel saisi par l’utilisateur Algorithm 3.2 : ValeurAbsolueV1 1 Variables : x, y : réel 2 Début 3 Ecrire (" Entrez un réel : " ) ; 4 Lire (x) ; 5 y ← x; 6 Si (x < 0) alors 7 y ← -x ; 8 Finsi 9 Ecrire ("la valeur absolue de ", x, "est :",y) ; 10 Fin 2. Forme composée : Si.......alors......Sinon q Dans cette forme, la condition est évaluée. Si elle vaut vrai alors c’est la séquence d’instructions 1 qui sera exécutée sinon c’est la séquence d’instructions 2 qui sera exécutée. q Elle permet de choisir entre deux actions selon qu’une condition est vérifiée ou non. Syntaxe en algorithmique Si alors Instructions 1 ; Sinon Instructions 2 ; Finsi Format Pseudo-code Pr. O.IBRIHICH Informatique 1 Chapitre 3 Structures de contrôle : conditionnelles et répétitives 59 Figure 3.2 – Format Organigramme du si..sinon Exemple 3.3 Exemple de test composé : Affiche la valeur absolue d’un entier saisi par l’utilisateur. Algorithm 3.3 : ValeurAbsolueV2 1 Variables : x : réel 2 Début 3 Ecrire (" Entrez un réel : ") ; 4 Lire (x) ; 5 Si (x < 0) alors 6 Ecrire ("la valeur absolue de ", x, "est :",-x) ; 7 Sinon 8 Ecrire ("la valeur absolue de ", x, "est :",x) ; 9 Finsi 10 Fin Exemple 3.4 Écrire un algorithme qui demande un nombre entier à l’utili- sateur, puis teste et affiche s’il est divisible par 3. Algorithm 3.4 : Divsible_par3 1 Variables : n : entier 2 Début 3 Ecrire ("Entrez un entier : ") ; 4 Lire(n) ; 5 Si (n mod 3=0) alors 6 Ecrire (n," est divisible par 3") ; 7 Sinon 8 Ecrire (n," n’est pas divisible par 3") ; 9 Finsi 10 Fin 3. Forme imbriquée : Si....alors..........sinon.........Finsi q Un test est une instruction qui permet d’effectuer un traitement différent Pr. O.IBRIHICH Informatique 1 Chapitre 3 Structures de contrôle : conditionnelles et répétitives 60 selon qu’une condition est vérifiée ou non. q Le test imbriqué est une généralisation de la structure de contrôle condition- nelle, lorsque le nombre de traitements différents est plus grand que deux. q Si la condition est vraie, alors la séquence d’instructions 1 sera exécutée sinon on évalue la condition 2 si elle est vraie la séquence d’instructions 2 sera exécutée. q Enfin, si aucune des ces conditions est vraie alors on exécute la séquence d’instructions 3. Syntaxe en algorithmique Si alors Instructions 1 ; Sinon Instructions 2 ; Finsi Sinon Si alors Instructions 1 ; Sinon Instructions 2 ; Finsi Format Pseudo-code Figure 3.3 – Format Organigramme du si imbriqué Pr. O.IBRIHICH Informatique 1 Chapitre 3 Structures de contrôle : conditionnelles et répétitives 61 Exemple 3.5 État de l’eau q Dans les conditions normales de température et de pression, l’eau est sous forme de glace si la température est inférieure ou égale à 0° C, sous forme de liquide si la température est comprise entre 0° C et 100° C et sous forme de vapeur au-delà de 100° C. q Écrivons l’algorithme qui permet de vérifier l’état de l’eau selon sa tempé- rature. La solution pourrait être comme suit : Algorithm 3.5 : Etat_EauV1 1 Variables : t : réel 2 Début 3 Ecrire ("Donner la température de l’eau :") ; 4 Lire (t) ; 5 Si (t 0 ET t < 100) alors 9 Ecrire ("Etat liquide") ; 10 Finsi 11 Si (t >= 100) alors 12 Ecrire ("Etat gazeux") ; 13 Finsi 14 Fin q Cet algorithme est correct mais il évalue les trois conditions qui portent sur la même variable et qui sont exclusives. En effet, si (t = 0 et t < 100) ni (t > 100). q Il est donc inutile d’évaluer les deux dernières conditions si la première est vérifiée, ou d’évaluer la dernière condition si la deuxième est vérifiée. q Pour éviter ce cas de figure, il sera préférable d’utiliser des tests imbriqués comme suit : Exemple 3.6 Exemple d’algorithme état de l’eau amélioré Pr. O.IBRIHICH Informatique 1 Chapitre 3 Structures de contrôle : conditionnelles et répétitives 62 Algorithm 3.6 : Etat_EauV2 1 Variables : t : réel 2 Début 3 Ecrire ("Donner la température de l’eau :") ; 4 Lire (t) ; 5 Si (t

Use Quizgecko on...
Browser
Browser