Помогите пожалуйста составить программу на 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.
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.
Штыхер
Никита
Спасибо огромное)))
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
"Три толстяка" Называли эту площадь Площадью Звезды последующей причине.
Русский язык.
на одной грядке коротышки посадили 3 ряда морковок по 8 штук
Разные вопросы.
эссе на тему какое образование дается в каждой семье
Қазақ тiлi.
Put the verb in brackets into the Present Indefinite.
1The Volga ,
Английский язык.
Сколько стоит коктейль молочный? Точную цену надо?
Математика.
Составить рассказ Из чего складывался культ монарха помазанника Божьего?
История.
задание экономиоти
Рассмотри ситуацию: человек живёт на Крайнем Се-вере. С помощью каких
Экономика.
Человек живет на Крайнем Севере. С помощью каких благ удовлетворяются потребности
Экономика.
там лежат три яйца.у дома рос клен.Это гнездо сойки.на клёне гнездо
Русский язык.
Тыныштық күйіндегі карусель 35 с-та 3,0 рад/с бұрыштық жылдамдықпен үдей қозғалады.
Разные вопросы.
Облако тегов