Работа 3.7 Упр.21 ГДЗ Семакин 10 класс (Информатика)
Рассмотрим вариант решения задания из учебника Семакин, Хеннер, Шеина 10 класс, Бином: 21. Дана действительная квадратная матрица порядка N (N — нечетное), все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диагоналях и поменять его местами с элементом, стоящим на пересечении этих диагоналей. *Цитирирование задания со ссылкой на учебник производится исключительно в учебных целях для лучшего понимания разбора решения задания. 10 semakin10 pract/3-7/21 98
Нужно найти наибольший элемент среди элементов главной и побочной диагоналей квадратной матрицы нечётного порядка и поменять его местами с центральным элементом матрицы.
Центральный элемент находится в позиции $$\left(\frac{n+1}{2}, \frac{n+1}{2}\right).$$
Просматриваем все строки матрицы. Для каждого элемента главной диагонали $$a[i,i]$$ и побочной диагонали $$a[i,n-i+1]$$ сравниваем его с текущим максимумом. Если найден больший элемент, запоминаем его координаты.
После просмотра диагоналей меняем найденный максимум местами с центральным элементом матрицы.
const nmax = 101;
var
a: array[1..nmax, 1..nmax] of longint;
n, i, j, maxi, maxj, v: longint;
begin
repeat
write(‘Введите нечётное n < ‘, nmax, ‘: ‘);
readln(n);
if not odd(n) then
writeln(‘n должно быть нечётно’);
if n > nmax then
writeln(‘n должно быть меньше ‘, nmax);
until (odd(n) and (n < nmax));writeln(‘Ввод матрицы’);
for i := 1 to n do
for j := 1 to n do
begin
write(‘a[‘, i, ‘,’, j, ‘] = ‘);
readln(a[i, j]);
end;maxi := 1;
maxj := 1;
for i := 1 to n do
begin
if a[i, i] > a[maxi, maxj] then
begin
maxi := i;
maxj := i;
end;
if a[i, n — i + 1] > a[maxi, maxj] then
begin
maxi := i;
maxj := n — i + 1;
end;
end;v := a[maxi, maxj];
a[maxi, maxj] := a[(n + 1) div 2, (n + 1) div 2];
a[(n + 1) div 2, (n + 1) div 2] := v;writeln(‘После обработки матрица приняла следующий вид:’);
for i := 1 to n do
begin
for j := 1 to n do
write(a[i, j]:6);
writeln;
end;
end.
Ответ: программа находит наибольший элемент на главной или побочной диагонали и меняет его с центральным элементом матрицы.