Как в Паскале вывести цифры от 0 до 9 змейкой?

uses crt; 
 
var 
  X, i, g, n, y: integer; 
 
procedure f; 
begin 
  Delay(100); 
  TextColor(x + 1); 
  gotoxy(x * 2, 1); 
  write(x); 
end; 
begin 
  read(n); 
  clrscr;  
    for X:= 0 to 4 do f;  
  readln; 
  readln; 
end.

Я дальше не знаю как с Y разобраться т.е как дальше под четверкой выводить 5 6 7 8 9. И почему в начале у 0 нет пробела ? Нужно что бы в итоге программа выводила пример ниже:

Eсли n = 5

0 1 2 3 4 
9 8 7 6 5
0 1 2 3 4  
9 8 7 6 5
0 1 2 3 4  

Ответы (1 шт):

Автор решения: Arik
uses crt; 
 
var 
  X, n, y: integer;
  goForward: boolean;
 
begin 
  read(n); 
  clrscr;
  goForward := true;
    for Y := 1 to n do
    begin
        if goForward then
        begin
            for X := 0 to n - 1 do
            begin
                write(x);
                write(' ');
            end;
            writeLn();
            goForward := false;
        end
        else
        begin
            for X := (x * 2) + 1 downto n do
            begin
                write(x);
                write(' ');
            end;
            writeLn();
            goForward := true;
        end;
    end;
  readln; 
  readln; 
end.
→ Ссылка