Structure algorithmique avancée

Slides:



Advertisements
Présentations similaires
Tris.
Advertisements

Chapitre annexe. Récursivité
Algorithmes et structures de données avancés
Algorithmes et structures de données
Introduction à l’Algorithmique
Calculs de complexité d'algorithmes
L’ÉPREUVE ANTICIPÉE D’HISTOIRE GÉOGRAPHIE
M. DELTA A ETE CHOISI CETTE ANNEE PAR LE RECTEUR POUR CORRIGER LEPREUVE DE MATHEMATIQUE DU DPECF (DIPLÔME PREPARATOIRE AUX ETUDES COMPTABLES ET FINANCIERE).
Algorithmique Résume.
Les Algorithmes de tri.
Les TESTS STATISTIQUES
Les TESTS STATISTIQUES
Système formel Nous avons introduit : signes de variables (x, y, z, …), de constantes (0, 1), d’opérations (+, ), de relations (=, ) Axiomes : ce sont.
INTRODUCTION.
La fonction Style Permet de créer des types de texte, par exemple
5. Les structures répétitives
Section VIII Modularité Partie II
variable aléatoire Discrète
Les sous-programmes Chapitre n° 5: Objectifs : Activité:
Initiation à la programmation et algorithmique cours 3
Section VI Structures répétitives (suite)
S.T.S. S.I.O. 1ère année La gestion de projets
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.
Les bases de l’Algorithmique
Langage C Révision.
Calcul et programmation au lycée avec Scilab
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.
Créer une animation simple Gif avec ImageReady.
Application des algorithmes génétiques
Section XI Traitement de fichiers
Algorithmique et Programmation
Algorithmique et structure de données
Algorithmes Branch & Bound
Python La structure itérative
Methode de Tri efficace
ALGORITHMIQUE en classe de seconde
Régression linéaire simple
FICHE METHODOLOGIQUE DE LA DISSERTATION
Algorithmique et Programmation
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.
1. Étude des caractéristiques du mouvement de Vénus
Modélisation des opérations Spécifier les transformations détat que lon attend des services de la machine Létat dune machine entièrement déterminée par.
Programmation linéaire en nombres entiers : les méthodes de troncature
LA LOGIQUE ALGORITHMIQUE
Module 8 : Surveillance des performances de SQL Server
Université de Sherbrooke
DEFINITION DE L’OBESITE
Un survol du language C.
Programmation linéaire en nombres entiers
Micro-intro aux stats.
[Title of the course] Cisco CCNA 1 Campus-Booster ID : 318
Structures de contrôle
1 SYSTEMES D’EQUATIONS Type d ’activité : leçon illustrée.
Cours LCS N°4 Présenté par Mr: LALLALI
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
Introduction et Généralités sur l’Algorithmique
La plongée en altitude Christian Vivetoctobre 2007Durée environ 45 ' N3 Ca donne envie d'y tremper ses palmes et le reste aussi mais en altitude que se.
Introduction au langage C : Structures de contrôle 1 ère année Génie Informatique Dr Daouda Traoré Université de Ségou
Copyright © SUPINFO. All rights reserved MATHEMATIQUES - PS1 CURSUS Des notions de base fondamentales à la compréhension de nombreux.
AdCore University Présente: Enchères, Règles et Alertes.
Initiation à l’Algorithmique
Découvrez la programmation évènementielle
Chapitre 4 Variables aléatoires discrètes
Introduction à la programmation (420-PK2-SL) cours 5 Gestion des applications Technologie de l’information (LEA.BW)
Scripts et fonctions Instructions de contrôle
Algorithmique Tableaux de données
Algorithmique Boucles et Itérations
Introduction à l’Informatique chap 3 Licence SPI Mme Delmotte.
Algorithmes Branch & Bound Module IAD/RP/RO Master d ’informatique Paris 6 Philippe Chrétienne.
BASE DE L’ALGORITHMIE.  Un système d’instructions.  Pour résoudre d’un problème ou d’une classe de problèmes  Recette de cuisine pour faire un gâteau.
Transcription de la présentation:

Structure algorithmique avancée 2-Apr-17 [Title of the course] Structure algorithmique avancée Campus-Booster ID : 159 www.supinfo.com Copyright © SUPINFO. All rights reserved Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Votre formateur… Arnaud CUEILLE Structure algorithmique avancée 2-Apr-17 Structure algorithmique avancée [Title of the course] Votre formateur… Titre: Professeur Référent en Algorithmique, Théorie des Graphes et Intelligence Artificielle. Distinction: Mastère en Recherche Opérationnelle et Intelligence Artificielle. Formation: Ingénieur en Informatique, Conception et Développement, (modélisation, optimisation, simulation, complexité et algorithmique). Qualifié en Gestion des Risques (spécialisé en modélisation et Systèmes d'Information) Publication: « La simulation des flux de transports de marchandises en agglomération » (2002). Contact: Arnaud.CUEILLE@supinfo.com SUPINFONE: 1 50087 Arnaud CUEILLE Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Objectifs de ce module En suivant ce module vous allez: 2-Apr-17 Structure algorithmique avancée [Title of the course] Objectifs de ce module En suivant ce module vous allez: Aborder, à l'aide d'exemples concrets, la construction méthodique d'un algorithme. Mettre en adéquation le type des données avec l'objectif imposé. Réviser les différentes formes d'exploitation des données. Maîtriser les différentes structures algorithmiques, leurs contraintes d'utilisation et leurs limites. Aborder quasi-exhaustivement des constructions algorithmiques évoluées. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Plan du module Voici les parties que nous allons aborder: 2-Apr-17 Structure algorithmique avancée [Title of the course] Plan du module Voici les parties que nous allons aborder: Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes). Instructions répétitives : TANTQUE et REPETER (et variantes). Instructions répétitives : POUR. Instructions de rupture de séquences imbriquées. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes 2-Apr-17 Structure algorithmique avancée [Title of the course] Remarque importante : Nous utiliserons, en paralèlle avec ce cours, le document: Algorithmique Annexes Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) 2-Apr-17 [Title of the course] Structure algorithmique avancée Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Plan de la partie Voici les chapitres que nous allons aborder: 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Plan de la partie Voici les chapitres que nous allons aborder: Imbrication : SI..ALORS Imbrication : SI..ALORS..SINON Imbrication : CAS..PARMI Imbrication : CAS..PARMI..PARDEFAUT Imbrication diverse Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS EXEMPLE, Groupe sanguin et filiation* (énoncé): La filiation, la relation via les groupes sanguins (critères d’impossibilité) : Deux parents O ne peuvent avoir d'enfant d'un autre type que O, Deux parents A, ou un parent A et un parent O, ne peuvent avoir d'enfant B, ni AB, Deux parents B, ou un parent B et un parent O, ne peuvent avoir d'enfant A, ni AB, Si l'un des parents est AB, l'enfant ne peut être O. *ATTENTION, ces critères ne sont valables que pour 95% de la population, voire moins ! Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS Tableau des filiations* probables et impossibilités à l'aide des groupes sanguins : Parent (1) Parent (2) … peuvent avoir … … ne peuvent pas avoir … O O O A, B, AB A A A, O B, AB A O A, O B, AB B B B, O A, AB B O B, O A, AB AB ? A, B, AB O Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS Tableau complet des filiations* probables et impossibilités à l'aide des groupes sanguins : Parent (1) Parent (2) … peuvent avoir … … ne peuvent pas avoir … O O O A, B, AB O A A, O B, AB O B B, O A, AB O AB A, B, AB O A O A, O B, AB A A A, O B, AB A B ? ? A AB A, B, AB O B O B, O A, AB B A ? ? B B B, O A, AB B AB A, B, AB O AB O A, B, AB O AB A A, B, AB O AB B A, B, AB O AB AB A, B, AB O Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS Algorithmique Annexes : (références) Sous chapitre 2-2-1 Test de filiation Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : SI..ALORS..SINON 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS..SINON EXEMPLE, Indice de Masse Corporelle* (énoncé): IMC, présentation : L'indice de masse corporelle permet d'estimer la quantité de masse grasse de l'organisme à partir de deux paramètres : le poids et la taille. Il permet d'évaluer la relation entre le poids et la santé en déterminant la corpulence de la personne, de voir s'il y a obésité ou maigreur et il en détermine la sévérité. L'IMC ne doit pas être utilisé comme seule mesure de la composition corporelle et/ou de la condition physique. *ATTENTION, ces critères ne sont valables que pour estimation générale et nécessitent une interprétation élaborée par des spécialistes ! Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : SI..ALORS..SINON 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS..SINON EXEMPLE, Indice de Masse Corporelle* (énoncé): IMC, présentation (Suite) : ATTENTION : Bien que l'IMC fournisse des points de repère indicatifs des niveaux de poids chez les adultes (de 18 à 65 ans), il ne s'applique pas aux nourrissons, aux enfants, aux femmes enceintes ou celles qui allaitent, aux personnes gravement malades, aux athlètes, ni aux adultes de plus de 65 ans. *ATTENTION, ces critères ne sont valables que pour estimation générale et nécessitent une interprétation élaborée par des spécialistes ! Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : SI..ALORS..SINON 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS..SINON EXEMPLE, Indice de Masse Corporelle* (énoncé): IMC, calcul : L'indice de masse corporelle est le rapport du poids (exprimé en Kilogrammes) sur le carré de la taille (exprimée en mètre). Il se calcule donc avec une formule mathématique simple : IMC = poids / (taille x taille) Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : SI..ALORS..SINON 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS..SINON EXEMPLE, Indice de Masse Corporelle* (énoncé): IMC, interprétation possible des résultats : inférieur à 25 : NORMAL de 25 à 30 : SURPOIDS de 30 à 35 : OBESITE MODEREE de 35 à 40 : OBESITE SEVERE Plus de 40 : OBESITE MASSIVE [Enoncé élaboré et adapté à partir des sources suivantes : Magazine de la santé, France5 - 2006] Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : SI..ALORS..SINON 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS..SINON Tableau des bornes inférieures et supérieures d'une interprétation possible de l'IMC : IMC borne inférieure borne supérieure normal - 25 surpoids 26 30 modéré 31 35 sévère 36 40 massive 41 - Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : SI..ALORS..SINON 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : SI..ALORS..SINON Algorithmique Annexes : (références) Sous chapitre 2-2-2 IMC simplifié Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : CAS..PARMI 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : CAS..PARMI EXEMPLE, Groupe sanguin et filiation : Afin de comparer le déroulement des instructions conditionnelles SI..ALORS et CAS..PARMI, l'exemple traité dans ce chapitre est identique au premier exemple vu dans ce module. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : CAS..PARMI 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : CAS..PARMI Algorithmique Annexes : (références) Sous chapitre 2-2-3 Test de filiation Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : CAS..PARMI..PARDEFAUT 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : CAS..PARMI..PARDEFAUT EXEMPLE, Groupe sanguin et filiation : La structure du CAS..PARMI..PARDEFAUT possède l'avantage de donner une alternative non formalisée en fin de structure conditionnelle. Cependant, les langages évolués possèdent des modes propres de fonctionnement pour cette instruction ! Lors de la traduction du langage algorithmique au langage évolué, il sera nécessaire, parfois, d'adapter l'écriture algorithmique aux particularités du langage de développement utilisé. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication : CAS..PARMI..PARDEFAUT 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication : CAS..PARMI..PARDEFAUT Algorithmique Annexes : (références) Sous chapitre 2-2-4 Test de filiation Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Imbrication diverse EXEMPLE, Tendance à l'obésité (énoncé) : 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication diverse EXEMPLE, Tendance à l'obésité (énoncé) : Calcul de l'indice de tendance à l'obésité : Prise de mesure au tour de taille. Pour un homme, tendance à l'obésité lorsque la mesure dépasse 100 cm. Pour une femme, tendance à l'obésité lorsque la mesure dépasse 90 cm. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Imbrication diverse Algorithmique Annexes : (références) Sous chapitre 2-2-5 Tendance à l'obésité Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Pause-réflexion sur cette 1ère partie 2-Apr-17 Instructions conditionnelles : SI..ALORS et CAS..PARMI (et variantes) [Title of the course] Pause-réflexion sur cette 1ère partie Avez-vous des questions ? Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instructions répétitives : TANTQUE et REPETER (et variantes) 2-Apr-17 [Title of the course] Structure algorithmique avancée Instructions répétitives : TANTQUE et REPETER (et variantes) Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Plan de la partie Voici les chapitres que nous allons aborder : 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Plan de la partie Voici les chapitres que nous allons aborder : Présentation Instruction : TANTQUE Instruction : REPETER..JUSQU’A Instruction : REPETER..TANTQUE Sortie de boucle prématurée Persistance dans une boucle Boucles imbriquées  Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Présentation Problèmes liés aux instructions répétitives (ou boucles) 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Présentation Problèmes liés aux instructions répétitives (ou boucles) Il est parfois nécessaire, en fonction d'une condition particulière, de traiter un certain nombre de fois une opération ou suite d'opérations. Pour réaliser cela, une structure répétitive peut être employée afin d'éviter une écriture séquentielle de structures conditionnelles bien trop lourde à mettre en place. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Présentation Les structures répétitives ou boucles 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Présentation Les structures répétitives ou boucles Puisqu'il est impératif de définir une condition pour "rentrer" dans la boucle ou "effectuer la répétition", il peut arriver que celle-ci ne soit pas "VRAI" lors du traitement de l'instruction répétitive ! Dans ce cas, l'instruction suivante est prise en compte et ainsi de suite …, en revanche, dans le cas contraire, où la répétition s'opère normalement, il faut impérativement "sortir" de cette boucle ! (Sinon, le programme ne se termine jamais). Conclusion : les opérations répétitives nécessiteront un examen minutieux des conditions de sortie de la boucle. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instruction : TANTQUE EXEMPLE, Agenda journalier (énoncé) : 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Instruction : TANTQUE EXEMPLE, Agenda journalier (énoncé) : L'objectif de ce programme est de faire afficher (ou imprimer) une liste d'heures successives dans une tranche de 8h00 à 18h00, par créneau d'une heure, en dessous du nom du jour choisi par l'utilisateur. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Instruction : TANTQUE Algorithmique Annexes : (références) Sous chapitre 2-3-2 Agenda journalier Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instruction : REPETER..JUSQU’A 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Instruction : REPETER..JUSQU’A EXEMPLE, Agenda journalier (énoncé) : Afin de comparer le déroulement des instructions répétitives TANTQUE et REPETER, l'exemple traité dans ce chapitre est identique au premier exemple vu dans ce module. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instruction : REPETER..JUSQU’A 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Instruction : REPETER..JUSQU’A Algorithmique Annexes : (références) Sous chapitre 2-3-3 Agenda journalier Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instruction : REPETER..TANTQUE 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Instruction : REPETER..TANTQUE EXEMPLE, Agenda journalier (énoncé) : Il existe deux variantes à l'écriture de l'instruction répétitive REPETER. Ses variantes sont complémentaires. Certains langages n'implémentent qu'une seule de ces instructions. Lors de la traduction du langage algorithmique au langage évolué, il sera nécessaire, parfois, d'adapter l'écriture algorithmique aux particularités du langage de développement utilisé. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instruction : REPETER..TANTQUE 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Instruction : REPETER..TANTQUE Algorithmique Annexes : (références) Sous chapitre 2-3-4 Agenda journalier Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Sortie de boucle prématurée 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Sortie de boucle prématurée EXEMPLE, Calendrier mensuel (énoncé) : L'objectif de ce programme est de faire afficher toutes les dates d'un mois choisi par l'utilisateur en dessous du nom du mois. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Sortie de boucle prématurée 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Sortie de boucle prématurée Algorithmique Annexes : (références) Sous chapitre 2-3-5 Calendrier mensuel Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Persistance dans une boucle 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Persistance dans une boucle EXEMPLE, Machine à sous (énoncé) : L'objectif de ce programme est de simuler le comportement aléatoire d'une machine à sous. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Persistance dans une boucle 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Persistance dans une boucle Algorithmique Annexes : (références) Sous chapitre 2-3-6 Machine à sous Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Boucles imbriquées EXEMPLE, Agenda journalier évolué (énoncé) : 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Boucles imbriquées EXEMPLE, Agenda journalier évolué (énoncé) : L'objectif de ce programme est de faire évoluer le programme d'affichage de l'agenda vu précédemment. L'utilisateur a maintenant le choix du nombre de jours à afficher. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : Agenda journalier évolué 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Boucles imbriquées Algorithmique Annexes : (références) Sous chapitre 2-3-7 Agenda journalier évolué Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Pause-réflexion sur cette 2ème partie 2-Apr-17 Instructions répétitives : TANTQUE et REPETER (et variantes) [Title of the course] Pause-réflexion sur cette 2ème partie Avez-vous des questions ? Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instructions répétitives : POUR 2-Apr-17 [Title of the course] Structure algorithmique avancée Instructions répétitives : POUR Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Plan de la partie Voici les chapitres que nous allons aborder: 2-Apr-17 Instructions répétitives : POUR [Title of the course] Plan de la partie Voici les chapitres que nous allons aborder: Présentation Instruction : POUR Sortie de boucle prématurée Persistance dans une boucle Boucle à bornes variables Boucle à pas variable Boucles à bornes fixes Boucles à bornes imbriquées Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Présentation Les structures répétitives ou boucles 2-Apr-17 Instructions répétitives : POUR [Title of the course] Présentation Les structures répétitives ou boucles A l'identique des autres instructions répétitives, l'instruction POUR risque de boucler indéfiniment ! L'instruction POUR est une instruction répétitive "tout en un". C'est à dire qu'elle a la possibilité d'intégrer une déclaration avec initialisation, la définition de la borne de sortie, ainsi que la valeur du pas (et de son signe). Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Présentation Les structures répétitives ou boucles (suite) 2-Apr-17 Instructions répétitives : POUR [Title of the course] Présentation Les structures répétitives ou boucles (suite) Conclusion : les opérations répétitives à l'aide de POUR nécessiteront un examen minutieux des conditions de sortie de la boucle et dans le cas d'une utilisation de variables à la place des éléments : initialisation, borne de sortie et pas; la cohérence de l'ensemble doit être validée avant toute traduction dans un langage quelconque. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instruction : POUR EXEMPLE, Agenda journalier (énoncé) : 2-Apr-17 Instructions répétitives : POUR [Title of the course] Instruction : POUR EXEMPLE, Agenda journalier (énoncé) : L'objectif de ce programme (identique aux exercices vus précédemment) est de faire afficher (ou imprimer) une liste d'heures successives dans une tranche de 8h00 à 18h00, par créneau d'une heure, en dessous du nom du jour choisi par l'utilisateur. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : 2-Apr-17 Instructions répétitives : POUR [Title of the course] Instruction : POUR Algorithmique Annexes : (références) Sous chapitre 2-4-2 Agenda journalier Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Sortie de boucle prématurée 2-Apr-17 Instructions répétitives : POUR [Title of the course] Sortie de boucle prématurée EXEMPLE, Calendrier mensuel (énoncé) : L'objectif de ce programme (identique aux exercices vus précédemment) est de faire afficher toutes les dates d'un mois choisi par l'utilisateur en dessous du nom du mois. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Sortie de boucle prématurée 2-Apr-17 Instructions répétitives : POUR [Title of the course] Sortie de boucle prématurée Algorithmique Annexes : (références) Sous chapitre 2-4-3 Calendrier mensuel Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Persistance dans une boucle 2-Apr-17 Instructions répétitives : POUR [Title of the course] Persistance dans une boucle EXEMPLE, Machine à sous (énoncé) : L'objectif de ce programme (identique aux exercices vus précédemment) est de simuler le comportement aléatoire d'une machine à sous. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Persistance dans une boucle 2-Apr-17 Instructions répétitives : POUR [Title of the course] Persistance dans une boucle Algorithmique Annexes : (références) Sous chapitre 2-4-4 Machine à sous Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Boucle à bornes variables 2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucle à bornes variables EXEMPLE, Agenda journalier plusieurs jours (énoncé) : L'objectif de ce programme (évolution de l'exercice vu précédemment) est de faire afficher (ou imprimer) une liste d'heures successives dans une tranche de 8h00 à 18h00, par créneau d'une heure, pour un certain nombre de jours déterminé par l'utilisateur. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Boucle à bornes variables 2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucle à bornes variables Algorithmique Annexes : (références) Sous chapitre 2-4-5 Agenda journalier plusieurs jours Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Boucle à pas variable EXEMPLE, Calcul de la monnaie en euro (énoncé) : 2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucle à pas variable EXEMPLE, Calcul de la monnaie en euro (énoncé) : L'objectif de ce programme est de déterminer le nombre de billets pour chacune des valeurs suivantes : 5 euro, 10, 20, 50 et 100 euro ; en fonction du prix d'un produit renseigné par l'utilisateur. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : Calcul de la monnaie en euro 2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucle à pas variable Algorithmique Annexes : (références) Sous chapitre 2-4-6 Calcul de la monnaie en euro Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucles à bornes fixes EXEMPLE, Tables de multiplication complètes (énoncé) : L'objectif de ce programme est d'afficher les tables de multiplication de 0 à 10. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : Tables de multiplication 2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucles à bornes fixes Algorithmique Annexes : (références) Sous chapitre 2-4-7 Tables de multiplication Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Boucles à bornes imbriquées 2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucles à bornes imbriquées EXEMPLE, Affichage d'une droite en diagonale (énoncé) : L'objectif de ce programme est d'afficher une droite à l'écran, dans un pavé de 50 sur 50, en diagonale. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Boucles à bornes imbriquées 2-Apr-17 Instructions répétitives : POUR [Title of the course] Boucles à bornes imbriquées Algorithmique Annexes : (références) Sous chapitre 2-4-8 Droite en diagonale Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Pause-réflexion sur cette 3ème partie 2-Apr-17 Instructions répétitives : POUR [Title of the course] Pause-réflexion sur cette 3ème partie Avez-vous des questions ? Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Instructions de rupture de séquences imbriquées 2-Apr-17 [Title of the course] Structure algorithmique avancée Instructions de rupture de séquences imbriquées Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Plan de la partie Voici les chapitres que nous allons aborder : 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Plan de la partie Voici les chapitres que nous allons aborder : Problème résolu 1 Problème résolu 2 Problème résolu 3 Problème résolu 4 Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Problème résolu 1 EXEMPLE, Nombre de jours par mois (énoncé) : 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 1 EXEMPLE, Nombre de jours par mois (énoncé) : L'objectif de ce programme est de déterminer, en fonction du mois et de l'année, le nombre de jours en prenant en compte les années bissextiles. Une année est bissextile si le millésime correspondant vérifie l'une des 2 propriétés suivantes : soit il est divisible par 4 et n'est pas divisible par 100, soit il est divisible par 400. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : Nombre de jours par mois 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 1 Algorithmique Annexes : (références) Sous chapitre 2-5-1 Nombre de jours par mois Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Problème résolu 2 EXEMPLE, Extraction de la valeur entière (énoncé) : 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 2 EXEMPLE, Extraction de la valeur entière (énoncé) : L'objectif de ce programme est de réaliser une fonction mathématique utile et généralement déjà présente dans les bibliothèques de développement en informatique : Extraction de la valeur entière d'un nombre décimal. Le principe retenu est une décrémentation répétitive si le nombre décimal est positif, ou bien une incrémentation répétitive s'il est négatif, jusqu'à ce que la valeur soit nulle. Un compteur tourne pour chaque itération afin de fournir la valeur entière correspondante. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : Extraction de la valeur entière 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 2 Algorithmique Annexes : (références) Sous chapitre 2-5-2 Extraction de la valeur entière Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Problème résolu 3 EXEMPLE, Points d'un mot au Scrabble (énoncé) : 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 3 EXEMPLE, Points d'un mot au Scrabble (énoncé) : L'objectif de ce programme est de calculer le nombre de points qu'un mot peut rapporter au Scrabble. Ce mot n'a pas encore été posé sur la grille du jeu, et par conséquent, les coefficients multiplicateurs du jeu (impactant la valeur des lettres ou du mot) ne sont pas pris en compte. k, w, x, y, z : 10 points j, q : 8 points f, h, v : 4 points b, c, p : 3 points d, g, m : 2 points a, e, i, l, n, o, r, s, t, u : 1 point Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes : Points d'un mot au Scrabble 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 3 Algorithmique Annexes : (références) Sous chapitre 2-5-3 Points d'un mot au Scrabble Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Problème résolu 4 EXEMPLE, Temps de remontée d'un plongeur (énoncé) : 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 4 EXEMPLE, Temps de remontée d'un plongeur (énoncé) : L'objectif de ce programme est de déterminer, pour une profondeur donnée, le temps de remontée d'un plongeur en prenant en compte les arrêts obligatoires à chaque palier. Pour une profondeur inférieure ou égale à 100 m, sachant qu’il faut faire un palier de 100 secondes à 30 m, puis de 30 m à 0, des paliers tous les 3 m, le temps diminuant de 10 secondes à chaque fois. Les paliers au dessus de 30 m sont augmentés de 25 secondes tous les 10 m, (ainsi p.ex. : 150 s à 50 m). La vitesse de remontée est estimée à 1 m/s et sera considérée constante. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Algorithmique Annexes: (références) Sous chapitre 2-5-4 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Problème résolu 4 Algorithmique Annexes: (références) Sous chapitre 2-5-4 Temps de remontée d'un plongeur Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Pause-réflexion sur cette 4ème partie 2-Apr-17 Instructions de rupture de séquences imbriquées [Title of the course] Pause-réflexion sur cette 4ème partie Avez-vous des questions ? Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Résumé du module ATTENTION ! 2-Apr-17 Structure algorithmique avancée [Title of the course] Résumé du module ATTENTION ! imbrications de sélections (ou filtres) et sorties de boucles POUR répétition avec déclaration, initialisation, borne et pas SI..ALORS simple sélection (ou filtre) TANTQUE et REPETER répétition SI..ALORS..SINON sélection avec alternative Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Pour aller plus loin… Si vous voulez approfondir vos connaissances: 2-Apr-17 Structure algorithmique avancée [Title of the course] Pour aller plus loin… Si vous voulez approfondir vos connaissances: Publications Introduction à l'algorithmique : Cours et exercices (Broché) de Cormen, Leiserson, Rivest Exercices et problèmes d'algorithmique : 144 énoncés avec solutions détaillées (Broché) de Baynat, Chrétienne Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Structure algorithmique avancée 2-Apr-17 [Title of the course] Félicitations Vous avez suivi avec succès le module de cours n°2 Structure algorithmique avancée Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.

Fin Structure algorithmique avancée 2-Apr-17 Structure algorithmique avancée [Title of the course] Fin Relisez attentivement tous les exemples de ce cours, essayez d'y apporter des améliorations, des ajouts, … Choisissez un nouveau sujet simple, non encore traité dans ce cours, et écrivez l'algorithme correspondant. Copyright © 2004-2005 NameOfTheOrganization. All rights reserved.