Задача 21 урок 13.1

Задача 21 урок 13.1

Пользователь передает целые положительные число N и M, выведете на экран последовательность от 1 до N, так чтобы ширина "ёлочки" увеличивалась до M чисел, то уменьшалась до 1. Например, для M=3 и N=19 получим:
1
2 3
4 5 6 -- максимум три числа
7 8
9
10 11
12 13 14 -- снова три числа
15 16
17
18 19.....

program task_21_lesson_13_1;
var
  n, c, i, j, f, m : integer;
begin
  c := 0;        // счетчик элементов в строке
  i := 1;
  j := 1;     // нужное кол-во элементов в строке
  readln(n, m);
  f := 1;        // переключатель роста длины строки
  while i <= n do
        begin
          write(i, ' ');
          i += 1;
          c += 1;
          if (c = j) then   // проверка длины строки
             begin
               writeln();
               j := j + f;
               c := 0;
             end;
          if (j = m) then      // проверка условия (max длина строки)
             f := -1;
          if (j <= 1) then         // проверка того что строку слили до 1-го
             f := 1;
        end;
  readln();
end.
vedro-compota's picture

решение засчитано

_____________
матфак вгу и остальная классика =)