Цикл foreach: различия между версиями

Материал из Вики проекта PascalABC.NET
Перейти к навигацииПерейти к поиску
(Новая: <source lang="Delphi">var a: array [1..5] of integer := (1,3,5,7,9); s: set of integer; begin write('foreach по массиву: '); foreach x: integer in a do write(x,' '...)
 
Нет описания правки
Строка 1: Строка 1:
Данный пример иллюстрирует возможности оператора foreach.
Цикл foreach используется для итерации по любому контейнеру, состоящему из однотипных элементов. Для начинающих это прежде всего массивы и множества.
<source lang="Delphi">var  
<source lang="Delphi">var  
   a: array [1..5] of integer := (1,3,5,7,9);
   a: array [1..5] of integer := (1,3,5,7,9);
Строка 9: Строка 11:
   writeln;   
   writeln;   
    
    
   s := [2..5,10..14,77];
   s := [2..5,10..14,77,666];
   write('foreach по множеству: ');
   write('foreach по множеству: ');
   foreach x: integer in s do
   foreach x: integer in s do
     write(x,' ');
     write(x,' ');
end.</source>
end.</source>
Заметим, что элементы во множестве перебираются не в порядке возрастания.
Заметим также, что цикл foreach может обращаться к элементам только на чтение и не может их изменять.

Версия от 15:04, 9 января 2010

Данный пример иллюстрирует возможности оператора foreach. Цикл foreach используется для итерации по любому контейнеру, состоящему из однотипных элементов. Для начинающих это прежде всего массивы и множества.

var 
  a: array [1..5] of integer := (1,3,5,7,9);
  s: set of integer;

begin
  write('foreach по массиву: ');
  foreach x: integer in a do
    write(x,' ');
  writeln;  
  
  s := [2..5,10..14,77,666];
  write('foreach по множеству: ');
  foreach x: integer in s do
    write(x,' ');
end.

Заметим, что элементы во множестве перебираются не в порядке возрастания. Заметим также, что цикл foreach может обращаться к элементам только на чтение и не может их изменять.