Предмет: Информатика,
автор: 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:
При заполнении массива обязательно должно быть несколько чисел в одной строчке или же можно вводить числа по очереди?
я думаю что n чисел строки сначала вводится в строку, а затем осуществляется перенос с помощью команды writeln
Я имел ввиду заполнение массива с клавиатуры в самом начале
Ответы
Автор ответа:
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
Похожие вопросы
Предмет: Алгебра,
автор: 2enotik
Предмет: Химия,
автор: foxoom34
Предмет: Українська мова,
автор: Аноним
Предмет: Математика,
автор: rzaandgasan
Предмет: Химия,
автор: Аноним