
Вопрос задан 20.07.2023 в 02:25.
Предмет Информатика.
Спрашивает Раскина Ира.
Нужно написать программу на 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

Ответы на вопрос

Отвечает Ганьшин Данила.
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



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для решения этой задачи на PascalABC нужно будет выполнить следующие шаги:
- Прочитать число n из входных данных.
- Создать двумерный массив размером n x n и заполнить его элементами из входных данных.
- Проверить, является ли массив симметричным относительно главной диагонали.
- Вывести "yes" или "no" в зависимости от результата проверки.
Вот готовый код для этой программы:
pascalprogram SymmetricMatrix; const MAX_SIZE = 100; type Matrix = array[1..MAX_SIZE, 1..MAX_SIZE] of integer; function IsSymmetricMatrix(n: integer; var arr: Matrix): boolean; var i, j: integer; begin for i := 1 to n do for j := i+1 to n do if arr[i, j] <> arr[j, i] then begin IsSymmetricMatrix := False; Exit; end; IsSymmetricMatrix := True; end; var n, i, j: integer; inputMatrix: Matrix; symmetric: boolean; begin Readln(n); for i := 1 to n do for j := 1 to n do Read(inputMatrix[i, j]); symmetric := IsSymmetricMatrix(n, inputMatrix); if symmetric then Writeln('yes') else Writeln('no'); end.
После выполнения программы, она будет считывать входные данные, проверять симметричность массива и выводить "yes" или "no" в зависимости от результата.


Похожие вопросы
Топ вопросов за вчера в категории Информатика

Информатика 47

Информатика 33

Информатика 67

Информатика 18

Информатика 25

Информатика 563

Информатика 16
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili