Structures itératives - Boucles


Une structure itérative permet de répéter  une ou plusieurs opérations en fonction d'une condition logique atteinte ou non.

Comment choisir entre les  trois structures proposées  ?



SI nombre d'itérations connu

  ALORS choisir boucle POUR

  SINON

        SI traitement exécuté au moins une fois

          ALORS choisir boucle REPETER

           SINON choisir boucle TANT QUE

       FINSI

FINSI



POUR.... FAIRE

Cette structure permet de répéter une suite d'opérations un certain nombre de fois. Elle n'a de sens que si le nombre d'itération est connu à l'avance.


POUR iteration=valeur_initiale A valeur_finale
   FAIRE instructions
FINPOUR


Programmons :

En Delphi : FOR (variable=debut TO fin) DO instruction;


En PHP : FOR (variable=debut;variable<fin;variable++){instruction;}


En C : FOR (int variable=debut;variable<fin;variable++){instruction;}

Remarque : en C et PHP on peut aussi décrémenter (variable--) ou modifier le pas d'incrément ou de décrément variable+=2 par exemple)


TANTQUE.... FAIRE

Cette structure répète une suite d'action tant que la condition est vérifiée.


....
TANT QUE <condition>
   FAIRE
       instructions
       mettre à jour <condition>
FINTQ
....


REMARQUE : si la condition est fausse dès le départ, les instructions ne seront jamais  exécutées.


ATTENTION : il est indispensable que la condition soit mise à jour dans la boucle et que la condition finisse par ne pas être remplie sinon on ne sortira jamais de cette boucle.


Programmons :

En Delphi : WHILE (condition) DO

BEGIN

instruction;

mise_a_jour(condition);

END;


En PHP : WHILE (condition){instruction;}


En C : WHILE (condition){instruction;}


REPETER.... JUSQU'A

Cette structure répète une suite d'actions jusqu'à ce que la condition soit vérifiée.


....
REPETER
  instructions
  mettre à jour <conditions>
JUSQU'A  <condition>


REMARQUE : les instructions seront exécutées au moins une fois.


ATTENTION : il est indispensable que la condition soit mise à jour dans la boucle et que la condition finisse par être remplie sinon on ne sortira jamais de cette boucle.


Programmons :

En Delphi : REPEAT

instruction;

mise_a_jour(condition);

UNTIL (condition);


En PHP : DO

{instructions;

mise_a_jour(condition);

}

WHILE (condition);


En C : DO

{instructions;

mise_a_jour(condition);

}

WHILE (condition);