MODULE: PROGRAMMATION STRUCTURÉE PARTIE 3 1 Les itérations (structure répétitiv

MODULE: PROGRAMMATION STRUCTURÉE PARTIE 3 1 Les itérations (structure répétitive – Les boucles) Pourquoi Les boucles? Dans les problèmes quotidiens, on ne traite pas uniquement des séquences d'actions,avecou sans conditions, mais il peut être fréquent d'être obligé d'exécuter un traitement (séquence d'actions), plusieurs fois. En effet, pour saisir les N notes d'un étudiant et calculer sa moyenne, on est amené à saisir N variables, puis faire la sommeet ensuite diviser la somme par N. Cette solution nécessite la réservation de l'espace par la déclaration des variables, et une série de séquences d'écriture/lecture. Ce problème est résolu à l'aide des structures répétitives. Celles-cipermettent de donner un ordre de répétition d'une action ou d'une séquence d'actions une ou plusieurs fois. Qu'est-ce qu'une boucle ? - Une boucle:également appelée structure répétitiveou encore structure itérative,est une structure qui permet de répéter les mêmesinstruction(s)plusieurs fois.- A chaque répétition,les instructions contenues dans la boucle sont exécutées. C’est ce qu’on appelle un tour de boucle ou encore une itération.Tout comme pour les conditions, il y a plusieurs façons de réaliser des boucles. Au bout du compte, cela revient à faire la même chose : répéter les mêmes instructions un certain nombre de fois.Nous allons voir trois types de boucles MODULE: PROGRAMMATION STRUCTURÉE PARTIE 3 2  Tant que  Faire ... Jusqu’à ou Répéter jusqu'à  Pour Dans tous les cas, le schéma est le même Voici ce qu'il se passe dans l'ordre :1. l'ordinateur lit les instructions de haut en bas (comme d'habitude) ;2. puis, une fois arrivé à la fin de la boucle, il repart à la première instruction ;3. il recommence alors à lire les instructions de haut en bas…4. … et il repart au début de la boucle.Le problème dans ce système c'est que si on ne l'arrête pas, l'ordinateur est capable de répéter les instructions à l'infini ! Il n'est pas du genre à se plaindre, vous savez : il fait ce qu'on lui dit de faire… Il pourrait très bien se bloquer dans une boucle infinie, c'est d'ailleurs une des nombreuses craintes des programmeurs.Et c'est là qu'on retrouve… les conditions ! Quand on crée une boucle, on indique toujours une condition. Cette condition signifiera « Répète la boucle tant que cette condition est vraie ». Vocabulaire associé aux boucles -Chaque exécution du code à l'intérieur d'une boucle s'appelle une itération.-Généralement, une boucle est précédée d'un certain nombre d'affectations que l'on appelle des initialisations. Elles servent à donner des valeurs initiales aux variables de la boucle (c'est-à-dire toutes celles qui vont varier dans la boucle).-Dans une boucle, on trouve fréquemment une variable qui joue le rôle de compteur (car elle compte en quelque sorte le nombre d'itérations). La valeur de cette variable est augmentée de MODULE: PROGRAMMATION STRUCTURÉE PARTIE 3 3 1 à chaque itération par une instruction de la forme variable ←variable + 1, que l'on appelle une incrémentation. 1- La boucle: Tant que  Syntaxe : Tant que (condition) Faire Instruction(s) Fin Tant que  Explication : - L’instruction "Tant que" permet d'exécuter des instructions tant que l'expression booléenne est vraie.  Exemple : Ecrire un algorithme qui demande à l’utilisateur de saisir 20 nombres entiers et qui affiche leurs sommes. o Solution : DEBUT Entier nb, i, somme i←1 somme←0 Ecrire "Entrez les 20 nombres :" Tant que (i<=20) Lire (nb) somme← somme + nb i←i+1 Fin Tant que Ecrire "La somme des 20 nombres est:", somme FIN 2- La boucle: Faire ... Jusqu’à ou Répéter ... jusqu'à  Syntaxe : Faire Instruction(s) MODULE: PROGRAMMATION STRUCTURÉE PARTIE 3 4 Jusqu’à (condition)  Explication : - L’instruction "Faire … jusqu'à" ou "Répéter … jusqu'à" permet d'exécuter des instructions jusqu'à ce que l'expression booléenne soit vraie.  Exemple : Ecrire un algorithme qui demande à l’utilisateur de saisir 20 nombres entiers et qui affiche leurs sommes. o Solution : DEBUT Entier nb, i, somme i←1 somme←0 Ecrire "Entrez les 20 nombres :" Faire Lire (nb) somme← somme + nb i←i+1 Jusqu’à (i<=20) Ecrire "La somme des 20 nombres est:", somme FIN La question qui se pose : Quelle est la différence entre l'instruction tant que, et l'instruction "faire jusqu'à" ? C'est très simple : la boucle tant que pourrait très bien ne jamais être exécutée si la condition est fausse dès le départ. Par exemple, si on avait initialisé la variable i à 21, la condition aurait été fausse dès le début et on ne serait jamais rentré dans la boucle (tant que). Pour la boucle Faire… jusqu'à, c'est différent : cette boucle s'exécutera toujours au moins une fois. En effet, le test se fait à la fin comme vous pouvez le voir. Si on initialise variable i à 21, la boucle s'exécutera une fois. Donc la différence entre l'instruction tant que, et l'instruction "faire jusqu'à" c'est que les instructions de cette dérniere sont exécutées au moins une fois. 3- La boucle: Pour  Syntaxe : pour var allant de valeur_début à valeur_fin faire Instruction(s) MODULE: PROGRAMMATION STRUCTURÉE PARTIE 3 5 Fi pour  Explication : - La variable var utilisée prend successivement les valeurs comprises entre valeur_début et valeur_fin. - L'instruction "pour" permet d'exécuter des instructions depuit la valeur_début jusqu'à la valeur_fin.-----  Exemple : Ecrire un algorithme qui demande à l’utilisateur de saisir 20 nombres entiers et qui affiche leurs sommes. o Solution : DEBUT Entier nb, i, somme somme←0 Ecrire "Entrez les 20 nombres :" Pour i allant de 1 à 20 faire Lire (nb) somme← somme + nb Fin pour Ecrire "La somme des 20 nombres est:", somme FIN Remarque : Le Traitement d'une boucle peut contenir lui aussi une autre boucle. On l'appelle dans ce cas des boucles imbriquées. Travail à faire : Ex1: Ecrire un algorithme qui lit un entier au départ et affiche les 10 premiers entier qui les suivants Exemple: on lit 13, on affiche 14, 15,16,....,23. Ex2: Ecrire un algorithme qui demande un nombre de départ, et qui calcule la somme des entiers jusqu'à ce nombre: S=1+2+3.....+n. Par exemple: si l’on entre 5, le programme doit calculer : 1 + 2 + 3 + 4 + 5 = 15 Ex3: Ecrire un algorithme qui demande à l’utilisateur de saisir 10 nombres entiers et qui affiche leurs sommes. Ex4: Ecrire un algorithme permettant de lire un nombre entier n et calcul le produit P=1*2*3*4*.....*n. Ex5: Ecrire un algorithme qui permet de calculer le factoriel d'un nombre positif n. NB : la factorielle de 8, vaut 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 MODULE: PROGRAMMATION STRUCTURÉE PARTIE 3 6 Ex6: Ecrire un algorithme permettant de lire un nombre n et calcule la somme S=1/2+2/3+3/4+4/5....+n-1/n. Ex7: Ecrire l'algorithme qui permet d'afficher tous les nombres pairs qui existent entre 1 et 10. Ex8: Ecrire l'algorithme qui permet d'afficher tous les nombres impairs entre 1 et 20 dans l'ordre décroissant. Ex9: Ecrire un algorithme qui permet de lire un nombre n et d'afficher sa table de multiplication. Ex10: Ecrire l'algorithme qui permet de saisir les moyennes des N étudiants de la classe Informatique et de calculer la moyenne générale de la classe. Ex11: Ecrire un algorithme qui saisit un nombre pair et qui détermine combien de fois il est divisible par 2. Exemple 8 est divisible 3 fois par 2 (2*2*2). Ex12: Quelle est la valeur de « n » après l'exécution de ces boucles imbriquées : n ← 3 Pour i allant de 1 à 3 faire Pour j allant de 1 à 3 faire n ← n + 1 FinPour FinPour Ecrire (n) 1- n = 3 2- n = 9 3- n = 10 4- n = 11 5- n = 12 uploads/Religion/ module-programmation-structuree-partie-3-travail-a-faire.pdf

  • 28
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Oct 29, 2021
  • Catégorie Religion
  • Langue French
  • Taille du fichier 0.9820MB