Embarcadero Delphi
Pour les boucles
Recherche…
Syntaxe
- pour OrdinalVariable: = LowerOrdinalValue to UpperOrdinalValue ne commence {loop-body} end;
- pour OrdinalVariable: = UpperOrdinalValue downOrdinalValue down commence {loop-body} end;
- pour EnumerableVariable dans Collection, commencez {loop-body} end;
Remarques
- La syntaxe de Delphi
for
-loop ne fournit rien pour modifier le montant de l'étape de1
à toute autre valeur. - Lors de la mise en boucle avec des valeurs ordinales variables, par exemple des variables locales de type
Integer
, les valeurs supérieure et inférieure seront déterminées une seule fois. Les modifications apportées à ces variables n'auront aucun effet sur le nombre d'itérations des boucles.
Simple pour la boucle
Une boucle for
itère de la valeur de départ à la valeur finale incluse.
program SimpleForLoop;
{$APPTYPE CONSOLE}
var
i : Integer;
begin
for i := 1 to 10 do
WriteLn(i);
end.
Sortie:
1
2
3
4
5
6
7
8
9
dix
En boucle sur les caractères d'une chaîne
Ce qui suit itère sur les caractères de la chaîne s
. Il fonctionne de la même façon pour la lecture en boucle des éléments d'un tableau ou d'un ensemble, à condition que le type de la variable de contrôle de boucle ( c
, dans cet exemple) corresponde au type d'élément de la valeur itérée.
program ForLoopOnString;
{$APPTYPE CONSOLE}
var
s : string;
c : Char;
begin
s := 'Example';
for c in s do
WriteLn(c);
end.
Sortie:
E
X
une
m
p
l
e
Sens inverse pour la boucle
Une boucle for
une itération de la valeur initiale à la valeur finale incluse, comme exemple de décompte.
program CountDown;
{$APPTYPE CONSOLE}
var
i : Integer;
begin
for i := 10 downto 0 do
WriteLn(i);
end.
Sortie:
dix
9
8
7
6
5
4
3
2
1
0
Pour une boucle utilisant une énumération
A for
itérer en boucle à travers les articles dans une énumération
program EnumLoop;
uses
TypInfo;
type
TWeekdays = (Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);
var
wd : TWeekdays;
begin
for wd in TWeekdays do
WriteLn(GetEnumName(TypeInfo(TWeekdays), Ord(wd)));
end.
Sortie:
dimanche
Lundi
Mardi
Mercredi
Jeudi
Vendredi
samedi
Pour en tableau
Une boucle for
itérer les éléments d'un tableau
program ArrayLoop;
{$APPTYPE CONSOLE}
const a : array[1..3] of real = ( 1.1, 2.2, 3.3 );
var f : real;
begin
for f in a do
WriteLn( f );
end.
Sortie:
1,1
2,2
3,3