Поиск…


Синтаксис

  • для OrdinalVariable: = LowerOrdinalValue для UpperOrdinalValue действительно начать {loop-body} end;
  • для OrdinalVariable: = UpperOrdinalValue downto LowerOrdinalValue действительно начать {loop-body} end;
  • для EnumerableVariable в коллекции do begin {loop-body} end;

замечания

  • Синтаксис Delphi for -loop не дает ничего, чтобы изменить количество шагов от 1 до любого другого значения.
  • При циклировании с переменными порядковыми значениями, например локальными переменными типа Integer , верхнее и нижнее значения будут определяться только один раз. Изменения таких переменных не будут влиять на счетчик циклов циклов.

Простой цикл

Цикл 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.

Выход:

Е
Икс

м
п
L
е

Обратное направление для цикла

Цикл 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