Les structures de répétition
Les structures ou instructions de répétition (appelées boucles) sont utilisées pour répéter plusieurs fois l’exécution
d’une seule instruction ou d’une instruction composée (ou bloc). Ces instructions peuvent être répétées de manière
inconditionnelle (définie) ou conditionnelle (indéfinie).
I. La forme inconditionnelle : La boucle Pour
Elle permet de répéter l’exécution d’une même séquence d’instructions un nombre de fois bien déterminé (connu à
l’avance).
Syntaxe :
Pour variable de contrôle valeur initiale jusqu’à valeur finale faire
Début
Instructions
Fin
Variable de contrôle : variable indice appelée aussi compteur. Elle doit être de type ordinal.
Valeur initiale, valeur finale : expressions de même type que la variable de contrôle.
Fonctionnement : La partie instructions est exécutée la première fois en affectant la valeur initiale à la variable de
contrôle. La variable de contrôle est incrémentée après chaque exécution de la partie instructions. L’exécution se
poursuit tant que la variable de contrôle n’a pas atteint la valeur finale.
Exemple : (voir organigramme 1)
Pour i1 jusqu’à 10 faire I1
Remarques :
1. Si la valeur initiale est égale à la valeur finale, les instructions de la boucle sont exécutées une seule fois.
2. La variable de contrôle ne doit pas être modifiée à l’intérieur de la boucle.
Application 1 :
Variable n : entier
Début
Pour n 1 jusqu’à 10 faire
Début
Ecrire (n)
Fin
Fin
Application 2 :
Variable c : caractère
Début
Pour c ‘a’ jusqu’à ‘z’ faire
Début
Ecrire (c)
Fin
Fin
Exercice 1 :
Ecrire l’algorithme qui calcule et affiche la somme des dix premiers nombres entiers positifs.
Variables i, somme : entiers
Début
Somme 0
Pour i 1 jusqu’à 10 faire
Somme somme+i
Ecrire (‘somme = ‘, somme)
Fin
Exercice 2:
Ecrire l’algorithme qui calcule et affiche la somme de dix nombres entiers positifs fournis en données.
Variables n, i, somme : entiers
Début
Somme 0
Pour i 1 jusqu’à 10 faire
Début
Lire(n)
Somme somme+n
Fin
Ecrire (‘somme = ‘, somme)
Fin
II. Les formes conditionnelles
Elles permettent de répéter l’exécution d’une instruction ou d’une séquence d’instructions un nombre de fois non connu
à l’avance. Il existe deux façons de réaliser ce type de répétition.
1. La 1ère forme : La boucle tant que
Syntaxe :
Tant que condition Faire
Début
instructions
Fin
Fonctionnement : La partie instructions est exécutée tant que la condition est vraie. Dès que la condition devient
fausse, il y a sortie de la boucle.
Exemple : (voir organigramme 2)
Tant que C Faire I1
Remarques :
1. La condition est évaluée dès l’entrée de la boucle, ce qui signifie que sa valeur doit être déjà définie.
2. L’instruction ou la séquence d’instructions peut ne pas être exécutée du fait que le test (la condition) est un ‘test en
tête’. La condition apparaît comme une condition de continuation.
3. La modification de la valeur de la condition est obligatoire à l’intérieur de la boucle.
Application 3 : Afficher les nombres pairs compris entre 2 et 20.
Variable n : entier
Début
n 2
Tant que n<=20 Faire
Début
Ecrire(n)
nn+2
Fin
Fin
Application 4 : Lire un nombre entier. Poursuivre la lecture tant que le nombre lu n’est pas positif.
Variable n : entier
Début
n -5 {voir remarque 1}
Tant que n<=0 Faire
Début
Ecrire (‘donner un nombre positif’)
Lire(n)
Fin
Ecrire (‘merci pour le nombre positif’)
Fin
Exercice 3 :
Ecrire l’algorithme qui calcule et affiche la somme des dix premiers nombres entiers positifs.
Variables i, somme : entiers
Début
Somme 0
i1
Tant que i<= 10 Faire
Début
Somme somme+i
i i+1
Fin
Ecrire (‘somme = ’, somme)
Fin
Exercice 4:
Ecrire l’algorithme qui calcule et affiche la somme de dix nombres entiers positifs fournis en données.
Variables n, i, somme : entiers
Début
Somme 0
i1
Tant que i<=10 Faire
Début
Lire(n)
Somme somme+n
i i+1
Fin
Ecrire (‘somme = ’, somme)
Fin
2. La 2ème forme : La boucle répéter
Syntaxe :
Répéter
instructions
Jusqu’à condition
Fonctionnement : La séquence d’instructions située entre Répéter et jusqu’à sera exécutée jusqu’à ce que la condition
devienne vraie.
Exemple : (voir organigramme 3)
Répéter I1 Jusqu’à C
Remarques :
1. La condition est évaluée en fin de boucle, ce qui signifie que sa valeur peut ne pas être définie à l’entrée de la boucle.
2. L’instruction ou la séquence d’instructions est exécutée au moins une fois du fait que le test (la condition) est un
‘test en queue’. La condition apparaît comme une condition d’arrêt.
3. La modification de la valeur de la condition est obligatoire à l’intérieur de la boucle.
Application 5 : Afficher les nombres pairs compris entre 2 et 20.
Variable n : entier
Début
n 2
Répéter
Ecrire(n)
nn+2
Jusqu’à n>20
Fin
Application 6 : Lire un nombre entier. Poursuivre la lecture tant que le nombre lu n’est pas positif.
Variable n : entier
Début
Répéter
Ecrire (‘donner un nombre positif’)
Lire(n)
Jusqu’à n>0
Ecrire (‘merci pour le nombre positif’)
Fin
Exercice 5 :
Ecrire l’algorithme qui calcule et affiche la somme des dix premiers nombres entiers positifs.
Variables i, somme : entiers
Début
Somme 0
i1
Répéter
Somme somme+i
i i+1
Jusqu’à i>10
Ecrire (‘somme = ’, somme)
Fin
Exercice 6:
Ecrire l’algorithme qui calcule et affiche la somme de dix nombres entiers positifs fournis en données.
Variables n, i, somme : entiers
Début
Somme 0
i1
Répéter
Lire(n)
Somme somme+n
i i+1
Jusqu’à i>10
Ecrire (‘somme = ’, somme)
Fin