Embarcadero Delphi
Dla pętli
Szukaj…
Składnia
- for OrdinalVariable: = LowerOrdinalValue do UpperOrdinalValue do begin {loop-body} end;
- for OrdinalVariable: = UpperOrdinalValue downto LowerOrdinalValue do begin {loop-body} end;
- dla EnumerableVariable in Collection do begin {loop-body} end;
Uwagi
- Składnia Delphi
for
-loop nie zapewnia niczego, by zmienić krok kroku z1
na jakąkolwiek inną wartość. - Podczas zapętlania ze zmiennymi wartościami porządkowymi, np. Zmiennymi lokalnymi typu
Integer
, górne i dolne wartości zostaną określone tylko raz. Zmiany takich zmiennych nie będą miały wpływu na liczbę iteracji pętli.
Prosty do pętli
Pętla for
iteruje od wartości początkowej do wartości końcowej włącznie.
program SimpleForLoop;
{$APPTYPE CONSOLE}
var
i : Integer;
begin
for i := 1 to 10 do
WriteLn(i);
end.
Wynik:
1
2)
3)
4
5
6
7
8
9
10
Pętla nad znakami ciągu
2005
Poniżej iteruje się po znakach ciągu s
. Działa podobnie do zapętlania elementów tablicy lub zestawu, o ile typ zmiennej sterującej pętlą ( c
, w tym przykładzie) odpowiada typowi elementu iterowanej wartości.
program ForLoopOnString;
{$APPTYPE CONSOLE}
var
s : string;
c : Char;
begin
s := 'Example';
for c in s do
WriteLn(c);
end.
Wynik:
mi
x
za
m
p
l
mi
Odwrotny kierunek pętli
Pętla for
iteruje od wartości początkowej do wartości końcowej włącznie, jako przykład „odliczania”.
program CountDown;
{$APPTYPE CONSOLE}
var
i : Integer;
begin
for i := 10 downto 0 do
WriteLn(i);
end.
Wynik:
10
9
8
7
6
5
4
3)
2)
1
0
Dla pętli za pomocą wyliczenia
Pętla for
iteruje elementy w wyliczeniu
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.
Wynik:
niedziela
poniedziałek
wtorek
środa
czwartek
piątek
sobota
Do w tablicy
Pętla for
iteruje elementy w tablicy
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.
Wynik:
1,1
2,2
3,3
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow