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

Задача 19 Урок 13.1:

Пользователь передает целое положительное число N, выведете на экран последовательность от 1 до N "ёлочкой", например для N=18:

1
2 3
4 5 6
7 8 9 10
11 12 13 14 15
16 17 18

ПРИМЕЧАНИЕ: эту задачу можно решить, как вложенными циклами, так и вообще одним циклом (что более изящно).
Решите указанными двумя способами.

Одним циклом:

var N, c1, c2, i: integer;
begin
 writeln('Введите целое положительное число:');
 readln(N);
 i := 1;
 c1 := 1;
 c2 := 1;
 while i <= N do
  begin
   if c1 = c2 then
    begin
     writeln(i);
     c2 := 1;
     c1 += 1;
    end
   else
    begin
     write(i, ' ');
     c2 += 1;
    end;
   i += 1;
  end;
 readln();
end.

Вложенными циклами:

var N, c1, c2, i: integer;
begin
 writeln('Введите целое положительное число:');
 readln(N);
 i := 1;
 c1 := 1;
 c2 := 1;
 while i <= N do
  begin
   c1 += 1;
   while (c1 > c2) do
    begin
     write(i, ' ');
     c2 += 1;
     i += 1;
    end;
    c2 := 1;
    writeln();
  end;
 readln();
end.