La composition conditionnelle. La composition alternative. La composition itérative : la forme REPETER. La composition itérative : la forme

Documents pareils
Examen Médian - 1 heure 30

Organigramme / Algorigramme Dossier élève 1 SI

Corrigé des TD 1 à 5

Cours d algorithmique pour la classe de 2nde

CORRECTION EXERCICES ALGORITHME 1

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

TRIGONOMETRIE Algorithme : mesure principale

MINISTERE DE L ENSEIGNEMENT TECHNIQUE ET DE LA FORMATION PROFESSIONNELLE. (Pour l obtention du diplôme d analyste programmeur)

Cours d Informatique

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Algorithmique et programmation : les bases (VBA) Corrigé

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Algorithmes et programmation en Pascal. Cours

S'orienter et se repérer sur le terrain avec une carte

Algorithmique avec Algobox

Cours Informatique Master STEP

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Programmation Objet - Cours II

Recherche dans un tableau

Correction TD algorithmique

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)


ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Championnat de France de Grilles Logiques Finale 7 juin Livret d'instructions

Algorithmique et structures de données I

Algorithmique avec Algobox

Climat Scolaire - Manuel utilisateur - Chapitre 2 : «Créer, Editer et suivi d un texte»

Programmation C++ (débutant)/instructions for, while et do...while

Table des matières. Chapitre 1 - Outils Espace de stockage Rafraichir Déposer un document Créer un dossier 5

L ALGORITHMIQUE. Algorithme

Programmation structurée et algorithmes de base en Pascal

Fonctions de deux variables. Mai 2011

Cours d Algorithmique et de Langage C v 3.0

L inégale répartition de l énergie solaire est à l origine des courants atmosphériques

Introduction à l algorithmique et à la programmation M1102 CM n 3

1 Introduction C+ + Algorithm e. languag. Algorigramm. machine binaire. 1-1 Chaîne de développement. Séance n 4

Correction TD Algorithmique 5.3 Pile Liste 5.3 Pile

Java Licence Professionnelle CISII,

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Plan du cours Cours théoriques. 29 septembre 2014

Propagation sur réseau statique et dynamique

Algorithmes récursifs

Pourquoi l apprentissage?

LE PROBLEME DU PLUS COURT CHEMIN

0 si a=b. Si a^ et b^ sont deux éléments différents du même anneau, alors le résultat de

Chapitre 2 Devine mon nombre!

1 Année LMD-STSM Algorithmique et Programmation. Série de TD 2

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Enseignement secondaire technique

En cas de partage avec des «side pots», chaque pot est traité séparément en commençant par les extérieurs.

Utilisation du tableau de bord

Initiation à la programmation en Python

Comment utiliser vos béquilles

CAHIER DES CHARGES ETIQUETTES MP06-EU (FORMAT ODETTE)

Logiciel SCRATCH FICHE 02

Présentation du PL/SQL

Carport Evolution 1 Voiture Adossant

Adama MBODJI MBODJ.SYSTEM

I- Définitions des signaux.

Blog? Qu est-ce qu un blog?

Chapitre 7 - Relativité du mouvement

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Programmation sous Delphi

Notions fondamentales du langage C# Version 1.0

INEX. Informatique en Nuage : Expérimentations et Vérification. Livrable n M1 PARALLÉLISME ET ÉVALUATION

Comment utiliser le lecteur MP3?

Associations Dossiers pratiques

Algorithmes de recherche

LA GESTION-LOCATION de voiliers de propriétaires

Manuel utilisateur logiciel Salles. Version 1.1

L analyse boursière avec Scilab

Accord sur l égalité professionnelles entre les femmes et les hommes

Cours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.

La répartition du capital de Accor est détaillée dans la partie 6 de la présente note.

Procédure de sauvegarde pour AB Magique

Logiciel Libre Cours 2 Fondements: Programmation

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Application 1- VBA : Test de comportements d'investissements

alg - Classes, instances, objets [oo] Exercices résolus

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Programme Compte bancaire (code)

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

De l automatisme à la domotique...

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

C++ - Classes, instances, objets [oo] Exercices résolus

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.


Algorithmique et Programmation, IMA

PREMIERE DEMANDE D UNE CARTE NATIONALE D IDENTITE

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

Algorithme. Table des matières

SNT4U16 - Initiation à la programmation TD - Dynamique de POP III - Fichiers sources

Poèmes. Même si tu perds, persévère. Par Maude-Lanui Baillargeon 2 e secondaire. Même si tu perds Tu n es pas un perdant pour autant Persévère

PREINSCRIPTION EN LIGNE

valant Descriptif du programme de rachat par la Société de ses propres actions soumis à l autorisation de l Assemblée Générale Mixte du 29 juin 2007

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

Par combien de zéros se termine N!?

TP, première séquence d exercices.

GE Security. KILSEN série KSA700 Centrale de détection et d alarme Incendie analogique adressable. Manuel d utilisation

Transcription:

- 74 - La composition conditionnelle La composition alternative La composition itérative : la forme REPETER La composition itérative : la forme

- 75 - Le problème : Vous êtes sur le bord d'une rivière à côté d'une barque qui est amarrée à un poteau. La barque est positionnée vers l'autre rive. Vous devez atteindre l'autre rive et y attacher la barque.

- 76 - Détacher la barque

- 77 - Monter dans la barque.

- 78 - Prendre les rames

- 79 - Donner un coup de rame Donner un coup de rame...

- 80 - SI on atteint l'autre rive, arrêter de ramer BOINGG

- 81 - Ranger les rames

- 82 - Descendre de la barque

- 83 - Attacher la barque

- 84 - Gagné! vous avez atteint l'autre rive

- 85 - Détacher la barque Monter dans la barque Prendre les rames Donner un coup de rames SI Autre rive non atteinte Donner un coup de rames FINSI SI Autre rive non atteinte Donner un coup de rames FINSI...... Ranger les rames Descendre de la barque Attacher la barque Comment décrire ce problème? Avec des conditionnelles? Problème Quand on monte dans le bateau, on est incapable de prévoir le nombre de coups de rames à donner Solution On doit disposer de structures permettant de décrire la répétition d'actions => STRUCTURES ITERATIVES

- 86 - STRUCTURE REPETER STRUCTURE REPETER Détacher la barque Monter dans la barque Prendre les rames REPETER Donner un coup de rames JUSQUA Autre rive atteinte BOUCLE Instruction ou groupe d'instructions exécutées plusieurs fois de suite ITERATION Une exécution de ces instructions Ranger les rames Descendre de la barque Attacher la barque

- 87 - Schéma d'exécution du REPETER Schéma d'exécution du REPETER Action Avant REPETER Action...... JUSQU'A <ConditionArrêt> Action Après Action Avant Action ou Série d'actions L'ACTION (ou série d'action) EST TOUJOURS EXECUTEE AU MOINS UNE FOIS LA CONDITION D'ARRET - est VRAI ou FAUX - est évaluée APRES chaque itération - doit être atteinte un jour (=VRAI) FAUX Condition d'arrêt VRAI Action Après

- 88 - Exemple de boucle infinie (la condition d'arrêt ne sera jamais atteinte) Océan atlantique

- 89 - Forme PASCAL du REPETER Forme PASCAL du REPETER Action Simple repeat <Instruction>; until <ConditionArrêt>; Série d'actions repeat <Instruction>; <Instruction>; <Instruction>; <Instruction>; until <ConditionArrêt>; LA FORME REPETER N'EXISTE PAS EN JAVASCRIPT

- 90 - Exemple PASCAL Exemple PASCAL program MotDePasse; uses Wincrt; var Mot: STRING; begin clrscr; repeat write('tapez votre mot de passe? '); readln (mot) ; until (mot = 'sésame') ; writeln ('Bravo, vous avez trouvé le mot de passe') ; end.

- 91 - La composition conditionnelle La composition alternative La composition itérative : la forme REPETER La composition itérative : la forme

- 92 - Nouveau problème Nouveau problème Vous devez vous rendre à pied au café "Le Triomphe" situé sur la place de l'etoile à Paris. Vous savez que ce café est situé à l'angle d'une rue. Vous pouvez arriver depuis n'importe quelle rue.

- 93 - Arriver sur la place de l'etoile

- 94 - Test : Existe-t-il un café "Le Triomphe" au coin de la rue?

- 95 - Se rendre à la rue suivante

- 96 - Test : Existe-t-il un café "Le Triomphe" au coin de la rue?

- 97 - Se rendre à la rue suivante

- 98 - Test : Existe-t-il un café "Le Triomphe" au coin de la rue?

- 99 - Entrer dans le café Boire un coup

- 100 - Première Solution Avec des conditionnelles Arriver sur la place de l'etoile SI il existe un café "Le triomphe" au coin de la rue Entrer dans le café Boire un coup SINON Se rendre à la rue suivante SI il existe un café "Le triomphe" au coin de la rue Entrer dans le café Boire un coup SINON Se rendre à la rue suivante SI il existe un café "Le triomphe" au coin de la rue Entrer dans le café Boire un coup etc... PROBLEME : ON NE CONNAIT PAS D'AVANCE LE NOMBRE D'ITERATIONS

- 101 - Deuxième Solution Avec la forme REPETER Arriver sur la place de l'etoile REPETER Se rendre à la rue suivante JUSQU'A il existe un café "Le triomphe" au coin de la rue Entrer dans le café Boire un coup

- 102 - Comment marche cette solution dans le cas où le café existe quand on arrive sur la place? PROBLEME : L'Itération peut être exécutée zéro fois On a besoin d'une nouvelle structure : STRUCTURE TANTQUE

- 103 - Structure TANTQUE Structure TANTQUE Arriver sur la place de l'etoile TANTQUE il n'existe pas de café "Le triomphe" au coin de rue Se rendre à la rue suivante FINTANTQUE Entrer dans le café Boire un coup

- 104 - Schéma d'exécution du TANTQUE Schéma d'exécution du TANTQUE Action Avant Action Avant TANTQUE <ConditionContinuation> Action...... FINTANTQUE Action Après L'ACTION (ou série d'action) PEUT ETRE EXECUTEE ZERO FOIS LA CONDITION DE CONTINUATION - est VRAI ou FAUX - est évaluée AVANT chaque itération - doit être évaluée à FAUX un jour Action ou Série d'actions Condition de continuation VRAI Action Après FAUX

- 105 - Une boucle TANTQUE peut aussi ne jamais se terminer Une boucle TANTQUE peut aussi ne jamais se terminer supposition : on vous a donné un mauvaise information (il n'existe pas de café "Le triomphe"). Si vous respectez l'algorithme, vous passerez votre vie à tourner autour de la Place. SOLUTION : Arriver sur la place de l'etoile sortir son calepin TANTQUE il n'existe pas de café "Le triomphe" au coin de rue ET......le nom de la rue n'est pas noté dans le calepin Noter le nom de la rue dans le calepin Se rendre à la rue suivante FINTANTQUE SI il existe un café "Le triomphe" au coin de rue Entrer dans le café Boire un coup FINSI

- 106 - Forme JAVASCRIPT du TANTQUE Forme JAVASCRIPT du TANTQUE Action Simple while (<ConditionContinuation>) <Instruction>; Série d'actions while (<ConditionContinuation>) { <Instruction>; <Instruction>; <Instruction>; }

- 107 - Exemple JAVASCRIPT Exemple JAVASCRIPT var nombreatrouver, nombresaisi ; nombreatrouver = 445 ; nombresaisi = prompt ('Devine le chiffre? ', ""); while (!(nombresaisi == nombreatrouver )) { nombresaisi = prompt ('Faux, essaie encore ', nombresaisi); } alert ('Bravo, le nombre a trouver etait bien ' + nombresaisi);