Нфлрматика программирование паскаль Паскаль:
Дана массив А(7,7). Найти наибольший элемент среди стоящих на главной и побочной диагоналях и поменять его местами с элементом, стоящим на пересечении этих диагоналей.

16 Дек 2022 в 19:40
64 +1
0
Ответы
1

program Main;
const
N = 7;
type
Matrix = array[1..N, 1..N] of integer;
var
A: Matrix;
i, j, maxElem: integer;
begin
// Ввод массива A(7,7)
for i := 1 to N do
for j := 1 to N do
begin
write('A[', i, ',', j, ']: ');
readln(A[i, j]);
end;

// Находим максимальный элемент на главной и побочной диагоналях
maxElem := A[1, 1];
for i := 2 to N do
if A[i, i] > maxElem then
maxElem := A[i, i];

for i := 1 to N do
if A[i, N - i + 1] > maxElem then
maxElem := A[i, N - i + 1];

// Меняем местами максимальный элемент и элемент на пересечении диагоналей
for i := 1 to N do
for j := 1 to N do
if (i = j) or (i = N - j + 1) then
begin
if A[i, j] = maxElem then
begin
A[i, j] := A[N - i + 1, i];
A[N - i + 1, i] := maxElem;
end;
end;

// Вывод измененного массива
writeln('Измененный массив:');
for i := 1 to N do
begin
for j := 1 to N do
write(A[i, j], ' ');
writeln;
end;
end.

16 Апр 2024 в 16:57
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир