Предмет: Информатика, автор: mizmila951

Паскаль
Дана матрица (двумерный массив) размером 20 × 20. Каждый элемент может принимать
целочисленные значения от 0 до 200. Опишите на русском языке или на одном из языков
программирования алгоритм, который позволяет определить, является ли данная матрица
симметричной относительно своей главной диагонали. Исходные данные объявлены так, как
показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не
использовать часть из них.
Паскаль Бейсик
const N=20;
var
a: array [0..N-1,0..N-1]
of integer;
i, j: integer;
begin
for i := 0 to N-1 do
for j := 0 to N-1 do
readln(a[i,j]);
...
end.

Ответы

Автор ответа: petyaGavrikov
0
const N=20;
var
a: array [0..N-1,0..N-1] of integer;
i, j: integer;
begin
for i := 0 to N-1 do
 for j := 0 to N-1 do read(a[i,j]);
for i := 0 to N-1 do
 begin
 for j := 0 to N-1 do write(a[i,j],' ');
 writeln;
 end;
i:=0; j:=0;
while (i<n-1)and(a[i,j]=a[j,i]) do
 begin
 i:=i+1;
 j:=0;
 while (j<i)and(a[i,j]=a[j,i]) do j:=j+1;
 end;
if a[i,j]=a[j,i] then writeln('Yes')
else writeln('No');
end.

Пример (для N=5):
1 2 3 4 5 
2 8 7 9 0 
3 7 4 3 1 
4 9 3 2 6 
5 0 1 6 8 
Yes
Автор ответа: Aillianna
0
Можно было проще
Автор ответа: Aillianna
0
for i := 0 to N - 1 do
for j := i to N - 1 do
if a[i, j] <> a[j, i] then begin
writeln(false);
Halt;
end;

writeln(true);
Похожие вопросы