Урок 13.1 Задача 18

Урок 13.1 Задача 18

Пользователь вводит целое положительное число N большее или равное 8, если оно не соответствует этим критериям (то есть не является положительным и большим или равным 8), выведете сообщение об ошибке, в противном случае выведите на экран все числа последовательности, не большие N.
Например, для N=20 получим результат:

8 10 3 12 14 3 16 18 3 20

-- то есть всё начинается с восьмерки, затем число увеличивается на 2, затем выводится тройка и ещё пара увеличенных на 2 чисел и т.д. пока не дойдем до N.

Модифицируйте решение предыдущей задачи. так чтобы пользователь вводил второе число M, которое отвечало бы за длину возрастающего фрагмента

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

var
  i, n, z, z1:integer;
begin
  i:=8;
  writeln('vvedite polozhitelnoe chislo >=8: ');
  readln(n);
  z1:=2;
  z:=z1;
  if (n>=8)then
  begin
    while (i<=n) do
    begin
      if z1=0 then
      begin
        write(3, ' ');
        z1:=z+1;
        z:=z1;
      end
      else
      begin
        write(i, ' ');
        i:=i+2;
        z1:=z1-1;
      end;
    end;
  end
  else
  writeln('oshibka');
  writeln();
  writeln('konec');
  readln();
end.