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.

Slides:



Advertisements
Présentations similaires
La Méthode de Simplexe Standardisation
Advertisements

Calculs de complexité d'algorithmes
GEF 243B Programmation informatique appliquée Boucles §
GEF 243B Programmation informatique appliquée Flot de contrôle et énoncés de sélection §
GEF 243B Programmation informatique appliquée
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
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 requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Récursivité.
8PRO100 Éléments de programmation Comment faire prendre une décision à un ordinateur?
Structures de contrôle de l’exécution
Analyse lexicale Généralités Expressions rationnelles Automates finis
Les algorithmes: complexité et notation asymptotique
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
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.
Développer en C avec Eclipse Introduction Création d'un projet Ajout de fichiers Compilation Exécution Utiliser le débogueur Département dinformatique.
66 Utilisation des classes et des objets. 6-2 Objectifs A la fin de ce cours, vous serez capables de : Créer de nouvelles classes à laide de Eclipse Utiliser.
Les itérations (boucle) Les routines Les Fonctions
Les Fonctions. Définir une fonction Sections de code indépendantes que lon peut appeler à nimporte quel moment et dans nimporte quel ordre. Bout de code.
Introduction à la programmation I Fonctions Structures de contrôle Structures de données (arrays simples et indexés) Variables locales et globales.
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
Programmation concurrente
IFT 6800 Atelier en Technologies d’information
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
8PRO107 Éléments de programmation
Chapitre 9 Les sous-programmes.
Chapitre 8 Structure de contrôle.
Chapitre 3 Syntaxe et sémantique.
COURS DE PROGRAMMATION ORIENTEE OBJET :
COURS DE PROGRAMMATION ORIENTEE OBJET :
CSI 1502 Principes fondamentaux de conception de logiciels
Instructions de contrôle
Le diagramme de séquences
Plan troisième cours Instruction sélective Instruction répétitive
99 Réutilisation du code grâce à l'héritage. 9-2 Objectifs À la fin de ce cours, vous serez capables de : Définir l'héritage Utiliser l'héritage pour.
Répéter dans un programme avec une Instruction itérative
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.
NORMALISATION DES LANGAGES DE PROGRAMMATION des Automates Programmables Industriels CEI
Structures alternative et répétitive
Animateur : Med HAIJOUBI
Javascript 1° PARTIE : LES BASES
1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
Le Bloc Case Cours LCS N°3 Présenté par Mr: LALLALI.
Ch. PAUL - Piles et Files à l'aide de listes chainées
Algorithmique Les structures Rappel L'enchaînement séquentiel
Gérer la sécurité des mots de passe et les ressources
LES PILES ET FILES.
La Boucle Repeat Cours LCS N°1 Présenté par Mr: LALLALI.
3 Les instructions. Cours 32 Plan du cours 3 Instruction Bloc Portée L’alternative Affectations =, +=, *=… Comment comparer –Comparer des réels –Comparer.
Boucles et Tests For( in ) { } While( ) { } Les exécutions conditionnelles (if.. else) peuvent être évitées avec des indexations logiques. Exemples: y=numeric(length(x));
Université de Sherbrooke
Scripts shell intro Un script bash est un fichier contenant une suite de commandes shell, exécutables par l'interpréteur (ici le programme /bin/bash),
Algorithmique et programmation en
Chapitre 6.2 Les curseurs Cours SGBD 3A Mme hkimi Jihène
Créer des packages.
Un survol du language C.
Les tests.
Cours n° 3 Traitements en Java
1 Programmation en C++ Marianne Morris. 2 Intro générale à la programmation On a déjà étudié le langage assembleur Langage de bas niveau Meilleur que.
1 PHP 5 Notions fondamentales (niveau 1 – cours #2) Formation continue – Cégep de Sainte-Foy.
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
Chapitre 3: Enoncés de programme Présentation pour Java Software Solutions Foundations of Program Design Deuxième Edition par John Lewis et William Loftus.
Les structures de contrôle
Scripts et fonctions Instructions de contrôle
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Philippe Gandy - 15 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Transcription de la présentation:

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 Exécuter des opérations en boucle Déboguer une application au moyen du débogueur Eclipse A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision Exécuter des opérations en boucle Déboguer une application au moyen du débogueur Eclipse

4-3 Vue d'ensemble Par défaut, le code s'exécute de manière séquentielle. Une exécution conditionnelle est nécessaire pour du code plus complexe. Les instructions peuvent exiger une exécution itérative. Java offre des mécanismes de contrôle standard. Par défaut, le code s'exécute de manière séquentielle. Une exécution conditionnelle est nécessaire pour du code plus complexe. Les instructions peuvent exiger une exécution itérative. Java offre des mécanismes de contrôle standard.

4-4 Types de contrôle de base Le contrôle du flot peut être catégorisé en quatre types : En séquence Par transfert Par sélection Par itération

4-5 Contrôle du déroulement dans Java Les instructions peuvent être regroupées en utilisant des accolades pour former une instruction composée, appelée également bloc. Chaque bloc s'exécute comme une instruction unique dans le flot de la structure de contrôle. Les instructions peuvent être regroupées en utilisant des accolades pour former une instruction composée, appelée également bloc. Chaque bloc s'exécute comme une instruction unique dans le flot de la structure de contrôle. { boolean finished = true; System.out.println("i = " + i); i++; }

4-6 L'instruction if if ( boolean_expr ) statement1; [else] statement2; if (i % 2 == 0) System.out.println("Even"); else System.out.println("Odd"); … if (i % 2 == 0) { System.out.println(i); System.out.println(" is even"); } Forme générale : Exemples :

4-7 Instructions if imbriquées if (speed >= 25) if (speed > 65) System.out.println("Speed over 65"); else System.out.println("Speed over 25"); else System.out.println("Speed under 25"); if (speed > 65) System.out.println("Speed over 65"); else if (speed >= 25) System.out.println("Speed over 25"); else System.out.println("Speed under 25");

4-8 L'opérateur conditionnel (?:) Solution alternative à if…else : Si boolean_expr est true, le résultat est expr1, sinon le résultat est expr2 : Solution alternative à if…else : Si boolean_expr est true, le résultat est expr1, sinon le résultat est expr2 : boolean_expr ? expr1 : expr2 int val1 = 120, val2 = 0; int highest; highest = (val1 > val2) ? 100 : 200; System.out.println("Highest value is " + highest);

4-9 Exercice pratique : trouvez les erreurs et corrigez-les int x = 3, y = 5; if (x >= 0) if (y < x) System.out.println("y is less than x"); else System.out.println("x is negative"); int x = 7; if (x = 0) System.out.println("x is zero"); int x = 15, y = 24; if ( x % 2 == 0 && y % 2 == 0 ); System.out.println("x and y are even"); 1 2 3

4-10 L'instruction switch Pratique pour effectuer une sélection parmi un certain nombre de valeurs entières possibles switch ( integer_expr ) { case constant_expr1: statement1; break; case constant_expr2: statement2; break; [default: statement3; break;] }

4-11 L'instruction switch (suite) Les libellés Case doivent être des constantes. Utilisez break pour sortir de switch. Fournissez toujours une valeur default. Les libellés Case doivent être des constantes. Utilisez break pour sortir de switch. Fournissez toujours une valeur default. switch (choice) { case 37: System.out.println("Coffee?"); break; case 45: System.out.println("Tea?"); break; default: System.out.println("???"); break; }

4-12 Mise en boucle Trois types de boucles dans Java : –while –do…while –for Toutes les boucles se composent de quatre éléments : –Initialisation –Itération –Corps –Terminaison Trois types de boucles dans Java : –while –do…while –for Toutes les boucles se composent de quatre éléments : –Initialisation –Itération –Corps –Terminaison

4-13 while est l'instruction de boucle la plus simple. Sa forme générale est : Exemple : while est l'instruction de boucle la plus simple. Sa forme générale est : Exemple : while ( boolean_expr ) statement; int i = 0; while (i < 10) { System.out.println("i = " + i); i++; } La boucle while

4-14 Les boucles do…while effectuent le test à la fin : Exemple : Les boucles do…while effectuent le test à la fin : Exemple : do statement; while ( termination ); int i = 0; do { System.out.println("i = " + i); i++; } while (i < 10); La boucle do…while

4-15 La boucle for Les boucles for sont les boucles les plus courantes : Exemple : A quoi cela ressemblerait-il si une boucle while était utilisée ? Les boucles for sont les boucles les plus courantes : Exemple : A quoi cela ressemblerait-il si une boucle while était utilisée ? for (i = 0; i < 10; i++) System.out.println(i); for ( initialization; termination; iteration ) statement;

4-16 La boucle for (suite) Les variables peuvent être déclarées dans la section initialisation d'une boucle for : L'initialisation et l'itération peuvent consister en une liste d'expressions séparées par des virgules : Les variables peuvent être déclarées dans la section initialisation d'une boucle for : L'initialisation et l'itération peuvent consister en une liste d'expressions séparées par des virgules : for (int i = 0; i < 10; i++) System.out.println("i = " + i); for (int i = 0, j = 10; i < j; i++, j--) { System.out.println("i = " + i); System.out.println("j = " + j); }

4-17 Exercice pratique : trouvez les erreurs int x = 10; while (x > 0); System.out.println(x--); System.out.println("We have lift off!"); int x = 10; while (x > 0) System.out.println("x is " + x); x--; int sum = 0; for (; i < 10; sum += i++); System.out.println("Sum is " + sum); 1 2 3

4-18 L'instruction break Permet de sortir d'une boucle ou d'une instruction switch : Passe le contrôle à la première instruction après le corps de la boucle ou de l'instruction switch Peut simplifier le code Permet de sortir d'une boucle ou d'une instruction switch : Passe le contrôle à la première instruction après le corps de la boucle ou de l'instruction switch Peut simplifier le code … while (age <= 65) { balance = (balance+payment) * (1 + interest)); if (balance >= ) break; age++; } …

4-19 for (int year = 2000; year < 2099; year++) { if ((year % 100 == 0) && (year % 400 != 0)) continue; if (year % 4 == 0) System.out.println(year); } … L'instruction continue Ne peut être utilisée que dans des boucles Abandonne l'itération en cours de boucle et passe à l'itération suivante de la boucle Ne peut être utilisée que dans des boucles Abandonne l'itération en cours de boucle et passe à l'itération suivante de la boucle

4-20 Instructions break et continue libellées Ces instructions peuvent être utilisées pour sortir des boucles imbriquées ou poursuivre une boucle externe hors de la boucle en cours outer_loop: for (int i = 0; i < 10; i++) { for (int j = 0; j < 5; j++) { System.out.println(i, j); if (i + j > 7) break outer_loop; } …

4-21 Débogueur Eclipse Permet de retrouver et de corriger les erreurs de programme –Erreurs d'exécution –Erreurs logiques Permet de contrôler l'exécution Permet d'examiner les variables Permet de retrouver et de corriger les erreurs de programme –Erreurs d'exécution –Erreurs logiques Permet de contrôler l'exécution Permet d'examiner les variables

4-22 Points de rupture Définition des points de rupture : Gestion de plusieurs points de rupture Points de rupture conditionnels Définition des points de rupture : Gestion de plusieurs points de rupture Points de rupture conditionnels

4-23 Utilisation du débogueur

4-24 Exécution d'un programme pas à pas Vous pouvez exécuter un programme pas à pas au moyen des boutons de la barre d'outils du débogueur : Exécuter le programme. Arrêter momentanément l'exécution. Arrêter le débogueur. Analyser un appel de méthode. Sauter un appel de méthode. Poursuivre l'exécution de la méthode jusqu'à la fin. Vous pouvez exécuter un programme pas à pas au moyen des boutons de la barre d'outils du débogueur : Exécuter le programme. Arrêter momentanément l'exécution. Arrêter le débogueur. Analyser un appel de méthode. Sauter un appel de méthode. Poursuivre l'exécution de la méthode jusqu'à la fin.

4-25 Variables de surveillance Vous pouvez examiner et modifier les variables locales dans le volet Data. Pour surveiller d'autres variables : –Sélectionnez une variable dans le volet Source. –Cliquez sur la variable à l'aide du bouton droit de la souris pour la sélectionner. –Sélectionnez la commande "Watch" dans le menu contextuel. Visualisez la variable dans le volet de surveillance. Vous pouvez examiner et modifier les variables locales dans le volet Data. Pour surveiller d'autres variables : –Sélectionnez une variable dans le volet Source. –Cliquez sur la variable à l'aide du bouton droit de la souris pour la sélectionner. –Sélectionnez la commande "Watch" dans le menu contextuel. Visualisez la variable dans le volet de surveillance.

4-26 Résumé Voici les principaux enseignements de cette leçon : La principale ressource pour la prise de décision est l'instruction if associée éventuellement à else. Java fournit également l'instruction switch. Java dispose de trois instructions de boucle : while, do…while et for. Utilisez break et continue modérément. Utilisez le débogueur Eclipse pour parcourir le programme Java à la recherche d'erreurs éventuelles. Voici les principaux enseignements de cette leçon : La principale ressource pour la prise de décision est l'instruction if associée éventuellement à else. Java fournit également l'instruction switch. Java dispose de trois instructions de boucle : while, do…while et for. Utilisez break et continue modérément. Utilisez le débogueur Eclipse pour parcourir le programme Java à la recherche d'erreurs éventuelles.