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);