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

Нужно написать программу на PascalABC.

Проверьте, является ли двумерный массив симметричным относительно главной диагонали. Главная диагональ — та, которая идёт из левого верхнего угла двумерного массива в правый нижний.

Входные данные
Программа получает на вход число n<=100, являющееся числом строк и столбцов в массиве. Далее во входном потоке идет n строк по n чисел, являющихся элементами массива.

Выходные данные
Программа должна выводить слово yes для симметричного массива и слово no для несимметричного.

Примеры
входные данные
3
0 1 2
1 5 3
2 3 4
выходные данные
yes
входные данные
3
0 0 0
0 0 0
1 0 0
выходные данные
no


raf1O5: При заполнении массива обязательно должно быть несколько чисел в одной строчке или же можно вводить числа по очереди?
CatLove2014: я думаю что n чисел строки сначала вводится в строку, а затем осуществляется перенос с помощью команды writeln
raf1O5: Я имел ввиду заполнение массива с клавиатуры в самом начале

Ответы

Автор ответа: raf1O5
0

program raf105;

var

 a:array[1..100,1..100] of integer;

 i,j,n: integer;

 x: boolean;

begin

x:= True;

write('Размер матрицы: ');

readln(n);

writeln('Заполните матрицу');

for i:=1 to n do

 for j:=1 to n do

   readln(a[j,i]);

for i:=1 to n do

begin

writeln;

 for j:=1 to n do

 begin

   write(a[j,i],' ');

   if x and (a[j,i] <> a[i,j])

     then x:= False;

 end;

end;

writeln;

if x

 then writeln('yes')

 else writeln('no');

end.

PascalABC 3.4.2

Похожие вопросы
Предмет: Математика, автор: rzaandgasan