Embarcadero Delphi
For Loops
サーチ…
構文
- OrdinalVariable:= LowerOrdinalValueをUpperOrdinalValueにするdo begin {loop-body} end;
- OrdinalVariable:= UpperOrdinalValue downto LowerOrdinalValue do begin {ループボディ} end;
- コレクションのEnumerableVariableに対してdo begin {loop-body} end;
備考
- デルファイの
for
-loop構文からステップ量を変更するには何も提供していない1
以外の値にします。 - 変数ordinal値、たとえば
Integer
型のローカル変数を使用してループする場合、上限値と下限値は1回だけ決定されます。そのような変数への変更は、ループ反復回数に影響しません。
シンプルなループ
for
ループは、開始値から終了値まで繰り返します。
program SimpleForLoop;
{$APPTYPE CONSOLE}
var
i : Integer;
begin
for i := 1 to 10 do
WriteLn(i);
end.
出力:
1
2
3
4
5
6
7
8
9
10
文字列の文字をループする
2005年
以下は、文字列s
文字を繰り返し処理します。これは、ループ制御変数(この例ではc
)のタイプが反復される値の要素タイプと一致する限り、配列またはセットの要素をループする場合と同様に機能します。
program ForLoopOnString;
{$APPTYPE CONSOLE}
var
s : string;
c : Char;
begin
s := 'Example';
for c in s do
WriteLn(c);
end.
出力:
E
バツ
a
m
p
l
e
ループの逆方向
for
ループは、「カウントダウン」の例として、開始値から終了値までを反復します。
program CountDown;
{$APPTYPE CONSOLE}
var
i : Integer;
begin
for i := 10 downto 0 do
WriteLn(i);
end.
出力:
10
9
8
7
6
5
4
3
2
1
0
列挙を使用するループの場合
for
ループは、列挙の項目を反復処理します。
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.
出力:
日曜日
月曜
火曜日
水曜日
木曜日
金曜日
土曜日
配列の場合
for
ループは配列内の項目を反復処理します。
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.
出力:
1,1
2,2
3,3
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow