Задача 5 Урок 14

Задача 5 Урок 14

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

var
  a, i, j, count: integer;
  procedure line(d, c:integer);
  begin
    while (d < c) do
    begin
      if (i <= a) then
         begin
            write(i, ' ');
            i:= i + 1;
            d:= d + 1;
         end;
    end;
  end;

begin
  a:= 17;
  j:= 0;
  count:= 1;
  i:= 1;
  while (i <= a) do
     begin
       line(j, count);
       writeln();
       j:= 0;
       count:= count + 1;
     end;
  readln();
end.       
vedro-compota's picture

переделать без глобальных

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

Переделал без глобальных переменных

var
  a, i, j, count: integer;
  procedure line(d, c:integer; var e, f: integer);
  begin
    while (d < c) do
    begin
      if (e <= f) then
         begin
            write(i, ' ');
            e:= e + 1;
            d:= d + 1;
         end;
    end;
  end;

begin
  a:= 17;
  j:= 0;
  count:= 1;
  i:= 1;
  while (i <= a) do
     begin
       line(j, count, i, a);
       writeln();
       j:= 0;
       count:= count + 1;
     end;
  readln();
end.