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

Houston Roger
Oct 24, 2020
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
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
235
Смежные вопросы: