Решение 2 Задача 18 Урок 13

Урок 13.1

Модифицируйте решение предыдущей задачи, так, чтобы длина возрастающего фрагмента каждый раз увеличивалась на единицу (начиная с двух):
810два числа3101214три числа316182022четыре числа3....3....и т.д.

Один цикл через mod.

var n, m, c, d : integer;

begin
  writeln('Vvedite celoe polozhitelnoe chislo');
  readln(n);
  m := 2; 
  d := 0;
  if n > 0 then
  begin
    for c := 8 to n do
    begin
      if ((c mod 2) = 0) then
      begin
        write(c, ' ');
        d := d + 1;
      if  ((d mod m) = 0) then
      begin
        write(3, ' ');
        m := m + 1;
        d := 0;
      end;
      end;
    end;
  end
  else
    writeln ('Error!');
end.

КОНСОЛЬ

Vvedite celoe polozhitelnoe chislo
50
8 10 3 12 14 16 3 18 20 22 24 3 26 28 30 32 34 3 36 38 40 42 44 46 3 48 50