Vous êtes sur la page 1sur 16

La boucle " Répéter"

 Fait répéter une séquence d’instructions jusqu’à ce


que la condition soit VRAIe
 Syntaxe
Répéter
séquence d'instructions
<Agir sur condition>
jusqu’à (condition)
La séquence d’instructions est exécutée au moins
1fois, contrairement à “pour” ou “tant que”
La boucle " Répéter"
Algorithme nombre_caract ;
Var C :caractère ;
Nb :entier ;
Début
Nb=0 ;
Répéter
Lire(C ) ;
Nb :=Nb+1 ;
Jusqu’à (C=’.’) ;
Ecrire(‘le nombre de caractère=’, Nb) ;
Fin.
La boucle " Répéter"
• Exercice: Ecrire un algorithme qui demande successivement des
nombres à l’utilisateur, cet algorithme retourne le nombre des valeurs
strictement positives et le nombre des valeurs strictement négatives.
Ne comptez pas les valeurs nulles.
L’algorithme s’arrête lorsque l’utilisateur répond Non (« N » ou « n »), à
la question: voulez-vous continuer?
Algorithme PosNeg
Var a , npos , nneg : Entier;
reponse : Caractère;
DEBUT
npos ← 0
nneg ← 0
REPETER
Ecrire (« Entrez un nombre : »)
Lire (a)
SI a > 0 ALORS
npos ← npos + 1
SINON
SI a < 0 ALORS
nneg ← nneg + 1
FIN SI
FIN SI
Ecrire (« Voulez-vous continuez O/N?»)
Lire (reponse)
JUSQU'A (reponse = « N » ou reponse = « n »)
Ecrire (« Le nombre de valeurs positives saisies est : » , npos)
Ecrire (« Le nombre de valeurs négatives saisies est : » , nneg)
FIN
DA
Donner la solution de l’exercice 9 (TD3) avec les 3 types de boucles.

La suite de Fibonacci est une suite d'entiers dans laquelle chaque terme
est la somme des deux termes qui le précède. Elle commence par les
termes 0 et 1 et ses premiers termes sont : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34,
55...

Calculer la valeur du Nième élément de la suite (Fn), N étant un


nombre entier positif >=2 donné par l’utilisateur.
Boucle Tant Que
Algorithme SuiteDeFibonacci
Var T1, T2, T3, N, i: entier;
Début Dérouler l’algorithme pour F5, N=5
Lire(N); i=2; T1=0; T2=1;
Tant que(i<=N) Faire T3 T1 T2 Indice
0 1 2
T3=T1+T2;
1 1 1 3
T1=T2;
2 1 2 4
T2=T3; 3 2 3 5
i=i+1; 5 3 5 6
Fait;
Ecrire (« l’élément », N, « est : », T3);
Fin.
Boucle Pour
Algorithme SuiteDeFibonacci
Var T1, T2, T3, N, i: entier;
Début
Lire(N); T1=0; T2=1;
Pour (i=2 à N) Faire
T3=T1+T2;
T1=T2;
T2=T3;
Fpour;
Ecrire (« l’élément », N, « est : », T3);
Fin.
Boucle Répéter
Algorithme SuiteDeFibonacci
Var T1, T2, T3, N, i: entier;
Début
Lire(N); i=2; T1=0; T2=1;
Répéter
T3=T1+T2;
T1=T2;
T2=T3;
i=i+1;
Jusqu’à (i>N);
Ecrire (« l’élément », N, « est : », T3);
Fin.
Structures de Contrôle
Algorithme Devinette
Var
t, a, n: entier;
Test: booléen;
Début
Ecrire(« Donner le nombre à trouver : »); Lire(a);
Test = faux; t=0;
Tant que(test=faux) faire
Ecrire(« Devinez le nombre : »); Lire(n); t=t+1;
si (n < a) alors
Ecrire («le nombre à deviner est plus grand! »);
sinon
si (n > a) alors
Ecrire («le nombre à deviner est plus petit! »);
sinon
test=vrai;
fsi;
fsi;
Fait;
Ecrire (« le nombre de tentatives est: »,t);
Fin.
Algorithme InverseSomme
Var nombre, inverse, reste, somme; nombre inverse reste somme
1234 0 0
Début 123 4 4 4
inverse=0, somme=0; lire(nombre); 12 43 3 7
1 432 2 9
Tant que (nombre <> 0) faire 0 4321 1 10
reste=nombre mod 10; //chiffre des unités
somme = somme + reste;
inverse = inverse*10 + reste; //reconstituer le nombre inversé
nombre=nombre div 10;
Fait;
Ecrire (« l'inverse est : », inverse, « et la somme est : », somme);
Fin.
Algorithme Triangle
Blanc -1 Etoile +2
Var i, j, ligne, blanc, etoile: entier;
7 1
Début 6 3
ligne=6,blanc=7,etoile=1; 5 5
pour(i=1 à ligne) 4 7
pour(j=1 à blanc) faire 3 9

ecrire(" "); 2 11
fpour;
1 2 3 4 5 6 7
blanc=blanc-1;
pour(j=1 à etoile) faire 1 *
ecrire("*"); 2 * * *
fpour; 3 * * * * *
4 * * * * * * *
etoile=etoile+2;
5 * * * * * * * * *
retourAlaLigne();
6 * * * * * * * * * * *
Fpour; 7
Fin. 8

Vous aimerez peut-être aussi