GEF 243B Programmation informatique appliquée Flot de contrôle et énoncés de sélection §5.2 - 5.3.

Slides:



Advertisements
Présentations similaires
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Architecture du logiciel I.
Advertisements

GEF 243B Programmation informatique appliquée Listes chaînées I – Tableaux de structures §15.1 – 15.2.
GEF 243B Programmation informatique appliquée
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Structure de base des programmes en C.
GEF 243B Programmation informatique appliquée
Cours n° 1 Présentation du langage C++
Algorithmes et structures de données Cours 9 Patrick Reuter
Calculs de complexité d'algorithmes
Algorithmique Résume.
GEF 243B Programmation informatique appliquée Boucles §
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Considération de temps.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Tests.
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée Structures §12.3.
GEF 243B Programmation informatique appliquée Expressions et opérateurs §
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Modélisation II.
GEF 243B Programmation informatique appliquée Tableaux et pointeurs §10.1.
GEF 243B Programmation informatique appliquée Listes chaînées II §15.1 – 15.2.
GEF 243B Programmation informatique appliquée Pointeurs et adresses §9.1.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Génie logiciel et Vérification et validation.
GEF 243B Programmation informatique appliquée Décisions de design avec structures de données §15.1 – 15.2.
GEF 243B Programmation informatique appliquée Expressions et opérateurs.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Types, variables et constantes.
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Génie logiciel avec composantes.
GEF 243B Programmation informatique appliquée Types dérivés, structures et tableaux §
GEF 243B Programmation informatique appliquée Expressions de type mixte et blocs §
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée
GEF 243B Programmation informatique appliquée
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Modules et masquage dinformation.
Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Tableaux et pointeurs §10.1.
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
Les bases de l’Algorithmique
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Semaine #1 INF155 par Frédérick Henri.
Langage C Révision.
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Expressions et assignations
8PRO100 Éléments de programmation Comment faire prendre une décision à un ordinateur?
Les dates Recherche d’un algorithme pour déterminer si une année est bissextile ou non.
Analyse lexicale Généralités Expressions rationnelles Automates finis
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Bases de la programmation en C++ 1 Les enchaînementsdinstruction Séquentiels. Exécutions dinstructions les unes à la suite des autres. Instructions séparées.
Semaine #1 INF130 par Frédérick Henri.
Semaine #1 INF135 par Frédérick Henri.
Points importants de la semaine Les constantes. Les boucles. Les opérateurs relationnels Les opérateurs logiques.
Instruction sélective switch-case Instruction répétitive do-while For
Principes de programmation
IFT 6800 Atelier en Technologies d’information
8PRO107 Éléments de programmation
Chapitre 9 Les sous-programmes.
Chapitre 8 Structure de contrôle.
COURS DE PROGRAMMATION ORIENTEE OBJET :
CSI 1502 Principes fondamentaux de conception de logiciels
ECP – Option SA Henri Fallon
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
Structures alternative et répétitive
1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
Algorithmique Les structures Rappel L'enchaînement séquentiel
3 Les instructions. Cours 32 Plan du cours 3 Instruction Bloc Portée L’alternative Affectations =, +=, *=… Comment comparer –Comparer des réels –Comparer.
Un survol du language C.
Les tests.
Cours n° 1 Présentation du langage C++
Cours n° 3 Traitements en Java
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
Scripts et fonctions Instructions de contrôle
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
ALGORITHME ET PROGRAMMATION RÉVISION Informatique et Sciences du Numérique.
Transcription de la présentation:

GEF 243B Programmation informatique appliquée Flot de contrôle et énoncés de sélection §

21-Jan-14 2 JGA Beaulieu Revue Quelles sont les trois opérateurs logiques en C? Quelle est la précédence entre eux? Comment applique-t-on la règle de DeMorgan aux expressions logiques

21-Jan-14 3 JGA Beaulieu Synopsis Contrôle du flot if-else else-if Expressions conditionnelles Switch

21-Jan-14 4 JGA Beaulieu Structures du langage et contrôle du flot Les première abstractions que les scientifiques en informatique ont devisé ont été les structures de langage. Au lieu davoir continuellement à réécrire le même code pour contrôler le flot dun programme en langage symboliques (assembleur), les langages de haut niveau nous fournissent des structures réutilisables Dans les années 1960, Edsger Dijkstra a noté que nous avons seulement besoin de trois structures: La séquence, le if-else et la boucle while

21-Jan-14 5 JGA Beaulieu Énoncé if-else Différent de MATLAB!! if (expression logique) Statement else Statement

21-Jan-14 6 JGA Beaulieu Énoncé if-else Exemple (avec un énoncé composé) if (taxable == TRUE) { itemTaxable++; prix *= tauxTaxe; //tauxTaxe 1.15 } else itemNonTaxable++;

21-Jan-14 7 JGA Beaulieu Énoncé else-if C na pas de structure pour un énoncé else-if, mais vous pouvez obtenir le même résultat avec le style if (note>=90) grade = A; else if (note >= 80) grade = B; else if (note >= 70) grade = C; else if (note >= 60) grade = D; else grade = F;

21-Jan-14 8 JGA Beaulieu Énoncé else-if Utilisez un énoncé else-if seulement si vous voulez faire des comparaisons sur une seule variable qui a une possibilité de plusieurs valeurs avec des plages pour les catégories (pas des valeurs intégrales) Ne lutilisez pas si vous avez des conditions multiples (i.e. évaluation de plusieurs variables). Ce que vous faites dans ce cas est simplement dimbriquer vos énoncés if-else.

21-Jan-14 9 JGA Beaulieu Expression conditionnelle C nous offre une alternative commode à lénoncé if-else traditionnel pour les sélection à deux choix lexpression conditionnelle: expression1 ? expression2 : expression3 Si expression1 est vrai, expression2 est la valeur de lexpression conditionnelle, sinon, la valeur est lexpression3

21-Jan JGA Beaulieu Expression conditionnelle Ex.: a = 1, b = 2, c = 5 a == b ? c-- : c++; //ici c = 6 a != b ? c-- : c++; //ici c = 4 a >= b ? c+=b : c-=b ; //quest c?

21-Jan JGA Beaulieu Énoncé switch Mais que faisons nous si nous avons quelque chose comme cela: if (flag == 0) {faitChose0} else if (flag == 1) {faitChose1} else if (flag == 2) {faitChose2} else if (flag == 3) {faitChose3} else if (flag == 4) {faitChose4} else {faitAutreChose} Utilisez un énoncé switch

21-Jan JGA Beaulieu Énoncé switch Switch est une généralisation de lénoncé if-else. Encore comme Java: switch (expression logique) { case constante1: énoncé1; //notez les énoncés énoncé2; //multiples break; case constante2: énoncé3; break; //sort après ce cas default: énoncé4; } //switch

21-Jan JGA Beaulieu Quiz Time Quelles sont les trois concepts que les humains utilisent pour faire face à la complexité dans la résolution des problèmes? Quel genre de décomposition utilise-t-on dans les langages structurels comme C?

21-Jan JGA Beaulieu Problèmes de révision 1 Assumez que gazRestant est une variable réel qui estime le montant de gaz dans votre réservoir Donnez un énoncé qui va allumer lindicateur presqueVide ( bool ) si il reste moins de 2 litres de gaz

21-Jan JGA Beaulieu Problèmes de révision 2 Testez la phase theta et vérifiez si cest zéro double theta Utilisez un structure if else pour vous assurez que: –PI <= theta <= PI

21-Jan JGA Beaulieu Problèmes de révision 3 Il y a des étudiants en GE, GI, et SI dans GEF243 Définissez une constante pour chaque groupe détudiant en utilisant un #define Déclarez une variable pour compter le nombre détudiants dans chaque groupe et initialisez la à zéro Utilisez un énoncé switch pour incrémenter le compteur pour le bon groupe Si un groupe inconnu est entré, incrémentez le compte des erreurs #define GE 0 //un exemple int groupeEtudiants = 0; //la variable à tester