Урок 12.2 Задача 3

Урок 12.2 Задача 3:

У вас есть программа, использующая цикл while:

var
   i: integer;
begin
  i:=1;
  while i<=100 do
  begin
    write(i, ' ');
    i:=i+5;
  end;
 
  readln();
end.

Объясните что делает эта программа (что будет выведно на экран и почему)
Перепешите её с помощью цикла repeat/until
Перепешите её с помощью цикла for

{В программе работает цикл с предусловием.
 Программа выводит значение счетчика на каждом витке цикла.
 Значения счетчика выводятся в строку через пробел
 Начальное значение счетчика: 1.
 За каждый виток значение счетчика увеличивается на 5, поэтому на экран выводятся числа с диапазоном через 5
 Цикл работает до тех пор, пока значение счетчика не превысит 100 (хотя само число 100 в данном
 случае не будет выведено на экран, поскольку оно не совпадает ни с каким очередным значением
 счетчика цикла}
var
   i: integer;
begin
  i:=1;              // начальное значение счетчика
  while i<=100 do    // цикл работает до тех пор, пока значение счетчика не превысит 100
  begin
    write(i, ' ');   // вывод на экран значения счетчика
    i:=i+5;          // за каждый виток значение счетчика увеличивается на 5
  end;

  readln();
end. 

Вывод в консоли:

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

var i: integer;
begin
  i:=1;              // начальное значение счетчика
  repeat
    write(i, ' ');   // вывод на экран значения счетчика
    i:=i+5;          // за каждый виток значение счетчика увеличивается на 5
  until (i>100);     // цикл работает до тех пор, пока значение счетчика не превысит 100
  readln();
end.

Вывод в консоли:

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

var i, n: integer;  // i - основной счетчик цикла, n - второй счетчик
begin
  n:=1;             // начальное значение второго счетчика
  for i:=1 to 20 do //один шаг счетчика меньше в 5 раз (по сравнению с программой в задании), поэтому верхний диапазон тоже уменьшим в 5 раз ( 100 / 5 = 20)
  begin
    write(n, ' '); // выводим значение второго счетчика
    n:= n+5;       // увеличиваем значение второго счетчика на 5
  end;
  readln();
end.

Вывод в консоли:

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96