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

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

Пользователь передает целое положительное число N, выведете на экран последовательность от 1 до N, так чтобы ширина "ёлочки" росла волнами. Например, для N=49 получим:
123--сначала до двух456789--потом до трёх101112--возвращаемся к одному131415161718192021--тут уже четыре2223242526--снова убывает 2728293031323334353637383940414243444546474849

program  u13z21;
var l,s,j,i,a,m,n: integer;

begin
  writeln('vvedite chislo n');
  readln(n);

  a:=1;
  j:=1;
  s:=2;
  m:=1;

  while (a <=n) do
  begin
    for i:=1 to m do
    begin
      if (a <=n) then
        write(a,' ');
        a:=a + 1;
    end;
    if  (m<j)then
    begin
      m:=m+1;
    end
    else
     if (m>1) then
     begin
       j:=1;
       m:=m-1;
     end
     else
     begin
       j:=s;
       s:=j+1;
       m:=m+1;
     end;
   writeln();
  end;
  readln();

end.   
vedro-compota's picture

после 18-ой и 19-ой пробуем решить одиним циклом

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