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

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

Модифицируйте предыдущий вывод "ёлочкой" так, чтобы в каждой нечетной строке выводились только четные числа, а в каждой четной только нечетные, например для N=17:

4 6
7 9
12 14
17

program  u13z20;
var i,a,m,n: integer;

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

  a:=1;
  m:=1;
  while (a <=n) do
  begin

    for i:=1 to m do
    begin
      if (a <=n) and ((m mod 2) =0)then
      begin
       if((a mod 2)=1) then
        write(a,' ')
      end
      else
      if (a <=n) and ((m mod 2) =1)then
      begin
       if((a mod 2)=0) then
        write(a,' ')
      end;

      a:=a + 1;
    end;
    m:=m+1;
     if (a<=n)then
      writeln();

  end;

  readln();

end.  
vedro-compota's picture

сначала решим 18-ою, а потом и тут решим одним циклом

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

program  u13z18;
var a,b,c,n,d,i: integer;

begin

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

  a:=0;
  c:=1;
  b:=1;
  d:=0;

  for i:=1 to n do

  begin
    a:=a + 1;
    if (d mod 2 = 1) and (a mod 2 =1) then
      write(a,' ')
    else
    if (d mod 2 = 0) and (a mod 2 = 0) then
       write(a,' ');

      if (a = c) then
      begin

        writeln();
        d:=d+1;
        b:=d+1;
        c:=c+b;

      end;

  end;

  readln();

end.

program  u13z18;
var a,b,c,n,d,i: integer;

begin

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

  a:=0;
  c:=1;
  b:=1;
  d:=0;

  for i:=1 to n do

  begin
    a:=a + 1;
    if (d mod 2 = 1) and (a mod 2 =1) then
      write(a,' ')
    else
    if (d mod 2 = 0) and (a mod 2 = 0) then
       write(a,' ');

      if (a = c) then
      begin

        writeln();
        d:=d+1;
        b:=d+1;
        c:=c+b;

      end;

  end;

  readln();

end.
vedro-compota's picture

ждем решения 18-ой задачи

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