for |
Pour |
---|---|
GNU Pascal |
Syntaxe
for ordinal_variable := initial_value to final_value do statement | Compteur incrémentale |
for ordinal_variable := initial_value downto final_value do statement | Compteur décrémentale |
for set_element_type_variable in some_set do statement | Compteur d'ensemble |
for pointer_variable := initial_address to final_address do statement | itération de pointeur incrémentale |
for pointer_variable := initial_address downto final_address do statement | itération de pointeur décrémentale |
Paramètres
Nom | Description |
---|---|
ordinal_variable | Ce paramètre permet d'indiquer une valeur ordinale à traiter à chaque passage de la boucle. |
initial_value | Ce paramètre permet d'indiquer la valeur initiale de la boucle. |
final_value | Ce paramètre permet d'indiquer la valeur finale de la boucle. |
pointer_variable | Ce paramètre permet d'indiquer un pointeur à traiter à chaque passage de la boucle. |
initial_address | Ce paramètre permet d'indiquer la valeur initiale du pointeur de la boucle. |
final_address | Ce paramètre permet d'indiquer la valeur finale du pointeur de la boucle. |
statement | Ce paramètre permet d'indiquer l'instruction à exécuter à chaque passage de la boucle. |
Description
Ce mot réservé permet de produire un compteur de boucle.
Remarque
- Le mot réservé for est défini dans ISO 7185 Pascal et est pris en charge par toutes les variantes de Pascal connues. L'itération des pointeurs est une extension de Borland Pascal. L'itération de membre d'ensemble est une extension ISO 10206 Extended Pascal.
Exemple
L'exemple suivant permet de tester une boucle avec un ensemble de caractères, une boucle incrémentale et une boucle de pointeur basé sur un factoriel :
- program ForSamples;
- var
- CharSet: set of Char;
- character: Char;
- n: Integer;
- Fac: array [0 .. 10] of Integer;
- PtrInt: ^Integer;
- begin
- CharSet := ['g', 'l', 'a', 'd', 'i', 'r', '.', 'c', 'o', 'm'];
- for character in CharSet do WriteLn(character);
- for n := 1 to 3 do WriteLn(n);
- for n := 1 to 10 do Fac[n] := Fac[n - 1] * n;
- {$X+}
- for PtrInt := @Fac[0] to @Fac[10] do WriteLn (PtrInt - @Fac[0], '! = ', PtrInt^)
- end.
on obtiendra le résultat semblable suivant :
.a
c
d
g
i
l
m
o
r
1
2
3
0! = 0
1! = 0
2! = 0
3! = 0
4! = 0
5! = 0
6! = 0
7! = 0
8! = 0
9! = 0
10! = 0
Dernière mise à jour : Dimanche, le 22 octobre 2017