Thème 3Contrôle de flux d’instructions<br />2011-01-27<br />SIO-2109 Z1 Introduction à la programmation<br />1<br />
Séquence d’instructions<br />Un programme= suite d’instructions exécutées l’une à la suite de l’autre.<br />Structure de c...
Sélection ou exécution conditionnelle (1/3)<br />« S’il fait chaud , alors j’ouvre la fenêtre »<br />« Si la lumière est r...
« S’il pleut je prends mon parapluie, mais je prendras quand même mon manteau »<br />« Si ce n’est pas assez salé, j’ajout...
Sélection ou exécution conditionnelle (2/3)<br />Python exécute normalement les instructions de la première à la dernière....
Sélection ou exécution conditionnelle (3/3)<br />elif (contraction de « else if »)<br />>>>a = 0<br />…if (a > 0):<br />…	...
Opérateurs de comparaison<br /><ul><li>x == y 		# x est égal à y
x != y 		# x est différent de y
x > y 		# x est plus grand que y
x < y 		# x est plus petit que y
x >= y 		#x est supérieur ou égal à y
x <= y 		#x est inférieur ou égal à y</li></ul>>>> a = 7 <br />>>> if (a % 2 == 0): <br />... 		print "a est pair" <br />....
Conditions<br /><ul><li>x,y=3,6</li></ul> x == y  Est-ce que x est égal à y : Non<br />			la valeur de la comparaison : F...
Blocs d’instructions(1/2)<br />Instructions composées (Bloc) ont la même structure<br />Ligne d’entête + ‘:’<br /> Indenta...
Prochain SlideShare
Chargement dans…5
×

Theme3

299 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
299
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
9
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Theme3

  1. 1. Thème 3Contrôle de flux d’instructions<br />2011-01-27<br />SIO-2109 Z1 Introduction à la programmation<br />1<br />
  2. 2. Séquence d’instructions<br />Un programme= suite d’instructions exécutées l’une à la suite de l’autre.<br />Structure de contrôle= instructions qui déterminent l’ordre d’exécution des actions<br />Séquence<br />Sélection<br />Répétition<br />2<br />
  3. 3. Sélection ou exécution conditionnelle (1/3)<br />« S’il fait chaud , alors j’ouvre la fenêtre »<br />« Si la lumière est rouge alors je ne peux pas traverser »<br />3<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si temps est «Chaud » Alors<br />|<br />| Ouvrir fenêtre<br />|Fin Si<br />|<br />Fin<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si lumière est «Rouge» Alors<br />|<br />| Attendre lumière verte<br />|<br />|Sinon<br />|<br />| Traverser<br />|Fin Si<br />Fin<br />
  4. 4. « S’il pleut je prends mon parapluie, mais je prendras quand même mon manteau »<br />« Si ce n’est pas assez salé, j’ajouterais du sel, sinon, si c’est trop salé je ne mangerais pas, sinon je mangerais quand même »<br />4<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si temps est «Pluvieux» Alors<br />| Ouvrir fenêtre<br />|Fin Si<br />|<br />|Prendre manteau<br />|<br />Fin<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si repas est « pas assez salé» Alors<br />|<br />| Ajouter sel<br />| Manger<br />|Sinon<br />|<br />| | Si repas est «Trop Salé» Alors<br />| | Ne pas manger<br />| |Sinon <br />| | Manger<br />| | Fin Si<br />|<br />|Fin Si<br />|<br />Fin<br />
  5. 5. Sélection ou exécution conditionnelle (2/3)<br />Python exécute normalement les instructions de la première à la dernière.  Sauf lorsqu’il rencontre une instruction conditionnelle comme l’instruction if.<br />L’instruction if permet de tester la validité de la condition.<br /> <br />Si la condition est vraie, alors l’instruction que nous avons indentée après le « : » est exécutée. <br />Si la condition est fausse, rien ne se passe. <br />>>>a = 20<br />>>>if (a > 100):<br />… print("a dépasse 100")<br />…else:<br />… print("a ne dépasse pas 100")<br />…<br />a ne dépasse pas 100<br />>>><br />5<br />Condition<br />Exécution alternative<br />
  6. 6. Sélection ou exécution conditionnelle (3/3)<br />elif (contraction de « else if »)<br />>>>a = 0<br />…if (a > 0):<br />… print(“a estpositif")<br />…elif (a < 0):<br />… print(“a estnégatif")<br />…else:<br />… print("a == 0")<br />Remarque<br />6<br />≠<br />Chaîne de caractères<br />Booléen (valeur logique)<br />
  7. 7. Opérateurs de comparaison<br /><ul><li>x == y # x est égal à y
  8. 8. x != y # x est différent de y
  9. 9. x > y # x est plus grand que y
  10. 10. x < y # x est plus petit que y
  11. 11. x >= y #x est supérieur ou égal à y
  12. 12. x <= y #x est inférieur ou égal à y</li></ul>>>> a = 7 <br />>>> if (a % 2 == 0): <br />... print "a est pair" <br />... print "parce que le reste de sa division par 2 est nul" <br />... else: <br />... print "a est impair" <br />...<br />a est impair<br />7<br />Attention!<br /> =: affectation<br />==: comparaison<br />
  13. 13. Conditions<br /><ul><li>x,y=3,6</li></ul> x == y  Est-ce que x est égal à y : Non<br /> la valeur de la comparaison : False<br />x<yEst-ce que x est supérieure à y: oui<br /> la valeur de la comparaison :True<br />Combinaison<br />Condition1et condition 2<br /> Condition3 oucondition 4 <br />>>>if (x<y) and (x>0):<br />… print(‘’x est positif et inférieur à y’’)<br />>>if (x>y) or(y==0):<br />… print(‘’y est nul et inférieur à x’’)<br />8<br />
  14. 14. Blocs d’instructions(1/2)<br />Instructions composées (Bloc) ont la même structure<br />Ligne d’entête + ‘:’<br /> Indentation(tabulations ou 4 espaces)+instruction<br />Un bloc d’instructions est une suite d’instructions formant un ensemble logique, qui n’est exécuté que dans certaines conditions définies dans la ligne d’en-tête.<br />9<br />
  15. 15. 10<br />Exemples<br />>>> temps = " Chaud " #initialisation<br /> <br />>>>if (temps== " Chaud"):<br />… print("J’ouvre la fenêtre")<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si temps est «Chaud » Alors<br />|<br />| Ouvrir fenêtre<br />|Fin Si<br />|<br />Fin<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si lumière est «Rouge» Alors<br />|<br />| Attendre lumière verte<br />|<br />|Sinon<br />|<br />| Traverser<br />|Fin Si<br />Fin<br />>>> lumière = " verte " #initialisation <br />>>>if (lumière == " Rouge"):<br />… print("J’attends la lumière verte")<br />…else:<br />… print(« Je traverse")<br />
  16. 16. 11<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si temps est «Pluvieux» Alors<br />| Ouvrir fenêtre<br />|Fin Si<br />|<br />|Prendre manteau<br />|<br />Fin<br />>>> temps = " Chaud " #initialisation<br /> <br />>>>if (temps== " Chaud"):<br />… print("J’ouvre la fenêtre")<br />Algorithme<br />Initialisation<br />Début <br />|<br />| Si repas est « Peu salé» Alors<br />|<br />| Ajouter sel<br />| Manger<br />|Sinon<br />|<br />| | Si repas est «Trop Salé» Alors<br />| | Ne pas manger<br />| |Sinon <br />| | Manger<br />| | Fin Si<br />|<br />|Fin Si<br />|<br />Fin<br />>>> repas = " Salé" #initialisation <br />>>>if (repas == " Peu salé"):<br />… repas = Salé<br />… print("Je mange le repas!")<br />…elif (repas == " Trop salé"):<br />… print("Je ne mange ce repas!") <br />…else:<br />… print("Je mange le repas!")<br />
  17. 17. Exemple<br />>>>embranchement = "vertébrés"<br />>>>classe = "mammifères"<br />>>>ordre = "carnivores"<br />>>>famille = "félins"<br /> <br />>>>if embranchement == "vertébrés":<br />… if classe == "mammifères":<br />…       if ordre == "carnivores":<br />…             if famille == "félins":<br />…                 print("c’est peut-être un chat")<br />…         print("c’est en tous cas un mammifère")<br />…  elif classe == "oiseaux":<br />…     print("c’est peut-être un canari")<br />…print("la classification des animaux est complexe")<br />12<br />Initialisation<br />Bloc 1<br />Bloc 2<br />
  18. 18. Un chat est caractérisé par son appartenance à l'embranchement des vertébrés, à la classe des mammifères carnivores et la famille des félins.<br />Nous fournissons ces données qui caractérisent cet être vivant au programme qui fonctionne selon le principe suivant:<br />Si l'être en question appartient à la classe des vertébrés alors il s'agit d'un mammifère ou bien d'un oiseau. <br />S'il s'agit d'un mammifère il se peut qu'il soit carnivore. S'il est carnivore il se peut qu'il soit un félin, on pourrait alors admettre que c'est un chat. De toute façon s'il est carnivore on est sur que c’est un mammifère.<br />Mais si c‘est un oiseau, ca se peut que ce soit un canari.<br />En fin de compte la classification des animaux est complexe.<br />13<br />Reformulation du problème<br />
  19. 19. Sélection ou exécution conditionnelle (2/2)<br />14<br />Si condition vérifiée<br />Autres cas traitement 2<br />Cas particulier traitement 1<br />Si condition est fausse<br />

×