Помогите пожалуйста составить программу на Pascal !Дана целочисленная квадратная матрица

Помогите пожалуйста составить программку на Pascal !
Дана целочисленная квадратная матрица A(N,N). Просматривая её элементы в данном порядке, найдите 1-ый чётный элемент и поменяйте его местами с диагональным элементом той строчки, в которой он находится. Порядок про-смотра: справа влево и снизу ввысь.

Задать свой вопрос
1 ответ
Uses Crt;
Label
   BbIXOD, BBODN;
Var
   A:array[1..19,1..19] of shortint;
   i,j,N,t:integer;
Begin
Randomize;
BBODN:
Write('N = ');ReadLn(N);
ClrScr;
if (N lt;= 0)or(N gt; 19) then GOTO BBODN;
t:= 700 div N;
For i:= 1 to N do
    Begin
    For j:= 1 to N do
        Begin
        A[i,j]:=random(21)-10;
        Write(A[i,j]:3,' ')
        End;
    WriteLn;
    End;
Delay(300);
For i:= N downto 1 do
    Begin
    For j:= N downto 1 do
        Begin
        if (j lt; N) then
           Begin
           GotoXY(j*4+1,i);
           TextBackground(0);
           Write(A[i,j+1]:3,' ');
           GotoXY(1,N+1);
           End;
        TextBackground(2);
        GotoXY(j*4-3,i);
        Write(A[i,j]:3,' ');
        Delay(t);
        if A[i,j] mod 2 = 0 then
           Begin
           Delay(700);
           if i lt;gt; j then
              Begin
              TextBackground(12);
              GotoXY(j*4-3,i);
              Write(A[i,j]:3,' ');
              Delay(700);
              TextBackground(14);
              GotoXY(i*4-3,i);
              Write(A[i,i]:3,' ');
              Delay(700);
              
              t:=A[i,j];
              A[i,j]:=A[i,i];
              A[i,i]:=t;
              
              TextBackground(14);
              GotoXY(j*4-3,i);
              Write(A[i,j]:3,' ');
              TextBackground(12);
              GotoXY(i*4-3,i);
              Write(A[i,i]:3,' ');
              Delay(700);
              
              TextBackground(0);
              GotoXY(j*4-3,i);
              Write(A[i,j]:3,' ');
              TextBackground(2);
              GotoXY(i*4-3,i);
              Write(A[i,i]:3,' ');
              End;
           t:=-1;
           GOTO BbIXOD;
           End
        End;
    GotoXY(1,i);
    TextBackground(0);
    Write(A[i,j]:3,' ')
    End;
BbIXOD:
TextBackground(0);
GotoXY(1,N+1);
if t gt;= 0 then WriteLn('Чётных частей не обнаружено');
WriteLn('Для повторного ввода N нажмите 0');
WriteLn('Для выхода - всякую иную клавишу');
if ReadKey = '0' then
   Begin
   ClrScr;
   GOTO BBODN;
   End
End.
Штыхер Никита
Спасибо огромное)))
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт