Accueil        LEXIQUE        Unités        Algorithmes        Tutoriel   

Sommaire lexique

Instruction For


La boucle for permet de répéter les instructions pour une plage de valeurs spécifique.

Deux formes sont possibles: l'incrémentation et la décrémentation. La forme générale de la boucle for est:

for Variable_executive := ValeurInitiale to ValeurFinale do
    Instruction;
Ou alors:
for VariableExecutive := ValeurInitiale downto ValeurFinale do
    Instruction;
La variable d'exécution doit être locale à la procédure courante et de type ordinal (types entiers, énumération et Intervals, char, booléen). La valeur de début et la valeur de fin sont toutes les expressions dont le type est compatible avec celui de la variable de boucle. Les valeurs de début et de fin ne sont calculées qu'une seule fois au début de la boucle.

Au début, la valeur initiale est affectée à la variable d'exécution. Le nombre d'exécutions de boucle est calculé à partir de la (valeur de fin - la valeur de départ + 1) pour la boucle de comptage ou la (valeur de départ - la valeur de fin + 1) pour la boucle de comptage à rebours.

L'instruction est ensuite exécutée aussi souvent que l'indique le nombre calculé d'exécutions de boucle. Si le nombre était inférieur ou égal à zéro, l'instruction n'est jamais exécutée. Après chaque passage de boucle, la variable de contrôle est augmentée de un (boucle de comptage) ou diminuée de un (boucle de décomptage).

Les affectations à la variable de boucle ne sont pas autorisées dans la boucle et conduisent à un message d'erreur du compilateur - la boucle for ne peut être quittée prématurément qu'avec une instruction goto ou l'instruction break.

Voici quelques exemples:

for i := 0 to size do
    flags[i] := true;
for i := n downto 1 do begin
    sum := y[i];
    for j := i + 1 to n do
        sum := sum - a[i,j]*x[j];
    x[i] := sum / d[i];
end;
for c := 'A' to 'Z' do
    loCase[c] := Chr( Ord(c) - Ord('A') + Ord('a') );
Le deuxième exemple montre également comment vous pouvez répéter plusieurs instructions dans une boucle for: Vous démarrez l'instruction avec un ensemble begin - end - crochets (bloc d'instruction).

Sommaire lexique


Copyright © 2021 par Albatros Concept (Bruno Aubin)