Les Structures de contrôles

Itératives ou répétitives

 

 

 

Zone de Texte: La structure de contrôle itérative permet à un programme de répéter une suite d’instruction ou tout un traitement.
Nous étudierons dans ce chapitre les trois formes d’itérations :
·	Pour … Répéter
·	Répéter … Jusqu’à …
·	Tant que … Faire

 

 

 

 

Pour ………………..…  Répéter

FOR …………………………… DO

 

Definition

 

Un traitement itératif est dit à une définition itérative complète s’il est la répétition d’une suite d’instructions un nombre fini de fois connu à l’avance.

 

 

 

 

 

Formulation générale

Exemple

 

Syntaxe

 

au niveau de l’analyse

ou

l’algorithme

[Init]

Pour i de vi à vf répéter

             ……………..

          suite d’instructions

            ……………..

FinPour

[S¬0]

Pour i de 1 à 5 répéter

            S ¬ S + 2*i

FinPour

 

Traduction en

Turbo PASCAL

vi<=vf

FOR i:= vi TO vf DO

          Begin

             …………….. ;

          traitement ;

            …………….. ;

          End ;

S:=0 ;

FOR I := 1 TO 5 DO

            begin

            S := S + 2*I ;

            End;

 

vi>=vf

FOR j:= vi DOWNTO vf DO

          Begin

             …………….. ;

          traitement ;

            …………….. ;

          End ;

S:=0 ;

FOR J := 5 DOWNTO 1 DO

            begin

            S := S + 2*J ;

            End;

 

A la sortie de la boucle

I=Vf     J=Vf

I=5      J=1      S=30

 

Nombre de répétitions du traitement

Contrôle de l’arrêt

·         Nombre de répétitions du traitement Connu

·        ½vf– vi½+1  si i est  de type entier

·         ½Ord(vf)-Ord(vi) +1½ sinon

·         I est «incrémenté» automatiquement après chaque itération et comparé avec vf

·         J est «décrémenté» automatiquement après chaque itération et comparé avec vf

 

 


 

 

Répéter ………………..… Jusqu’à………….

REPEAT …………………………… UNTIL

 

Définition

 

Un traitement a une définition itérative à condition d’arrêt s’il est la répétition d’une suite d’instruction jusqu’à ce que la condition d’arrêt passe à l’état vrai .

 

 

 

 

 

Formulation générale

Exemple

 

Syntaxe

 

au niveau de l’analyse

ou

l’algorithme

[Init] 

Répéter

               

                Suites d ‘instructions

 

Jusqu’à (condition d’arrêt)

 

[i¬ 0]

[S¬0]

Répéter

            i¬i+1

            S¬S+i

Jusqu’à i=6

 

Traduction en

Turbo PASCAL

REPEAT

 

                Suites d ‘instructions ;

 

UNTIL condition d’arrêt;

 

i := 0;

S :=0;

Repeat

            I :=i+1;

            S :=S+i;

Until i=6;

 

A la sortie de la boucle

condition d’arrêt = Vrai

i = 6               S=21

 

Nombre de répétitions du traitement

Contrôle de l’arrêt

·         Inconnu (varie de 1 à l’infini !)

 

·         Au moins 1 fois

 

·         Le traitement répétitif s’arrête lorsque la condition d’arrêt devient égale à vrai

 

Attention

·         Prévoir au moins une instruction à l’intérieur du traitement permettant de modifier la condition d’arrêt (affectation ou lecture), sinon la boucle sera infinie

 

 


 

 

Tant que ………………..… Faire………….

WHILE …………………………… DO……………..

 

Définition

 

Un traitement a une définition itérative à condition d’arrêt s’il est la répétition d’une suite d’instruction tant que la condition de Non arrêt est vrai

 

 

 

 

 

Formulation générale

Exemple

 

Syntaxe

 

au niveau de l’analyse

ou

l’algorithme

Init] 

Tant que (condition de non arrêt) faire

 

                Suites d ‘instructions

 

FinTantQue

[i¬ 0]

[S¬0]

Tant Que    I<>6     Faire

            i¬i+1

            S¬S+i

Fin Tant Que

 

Traduction en

Turbo PASCAL

While (condition de non arrêt ) DO

Begin

 

Suites d ‘instructions ;

 

End ;

i := 0 ;

S :=0 ;

WHILE    I<>6     DO

         Begin

            I :=i+1;

            S :=S+I;

            End;

 

 

A la sortie de la boucle

La condition de non arrêt =Faux

i = 6               S=21

 

Nombre de répétitions du traitement

Contrôle de l’arrêt

·         Inconnu (varie de 0 à l’infini !)

 

·         Au moins 0 fois

 

·         Le traitement répétitif s’arrête lorsque la condition de non arrêt devient égale à faux

 

Attention

·         Prévoir au moins une instruction à l’intérieur du traitement permettant de modifier la condition d’arrêt (affectation ou lecture), sinon la boucle sera infinie