Из матрицы исключить строку и столбец, содержащие максимальный элемент - Pascal
Формулировка задачи:
Составить программу, которая в задаваемом пользователем двумерном числовом массиве размеров n*n исключает строку и столбец, содержащие максимальный элемент массива.
Решение задачи: «Из матрицы исключить строку и столбец, содержащие максимальный элемент»
textual
Листинг программы
var a:array[1..10,1..10] of integer; n,m,i,j,imx,jmx,mx:integer; begin repeat write('Введите n от 2 до 10 n='); readln(n); until n in [2..10]; writeln('Исходный массив'); for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=10+random(90); write(a[i,j]:3); if(i=1)and(j=1) then begin mx:=a[1,1]; imx:=1; jmx:=1; end else if a[i,j]>mx then begin mx:=a[i,j]; imx:=i; jmx:=j; end; end; writeln; end; writeln('Максимальный элемент=',mx,' в строке ',imx,' в столбце ',jmx); m:=n; if imx=m then m:=m-1 else begin for i:=imx to m-1 do for j:=1 to n do a[i,j]:=a[i+1,j]; m:=m-1; end; if jmx=n then n:=n-1 else begin for j:=jmx to n-1 do for i:=1 to m do a[i,j]:=a[i,j+1]; n:=n-1; end; writeln('Массив после удаления строки и столбца с максимальным элементом'); for i:=1 to n do begin for j:=1 to n do write(a[i,j]:3); writeln; end; end.
Объяснение кода листинга программы
- Объявление переменных:
a
: двумерный массив целых чисел размером от 1 до 10 по обеим осямn
,m
,i
,j
,imx
,jmx
,mx
: целые переменные
- Пользователю предлагается ввести значение переменной
n
от 2 до 10. - Заполнение и вывод исходного массива:
- Создание и заполнение массива
a
случайными целыми числами от 10 до 99 - Вывод на экран элементов массива с форматированием
- Определение максимального элемента и его позиции в массиве
- Создание и заполнение массива
- Вывод максимального элемента и его позиции в исходном массиве.
- Удаление строки с максимальным элементом:
- Если индекс максимального элемента равен
m
, тоm
уменьшается на 1 - В противном случае происходит сдвиг элементов для удаления строки с максимальным элементом
- Если индекс максимального элемента равен
- Удаление столбца с максимальным элементом:
- Если индекс максимального элемента равен
n
, тоn
уменьшается на 1 - В противном случае происходит сдвиг элементов для удаления столбца с максимальным элементом
- Если индекс максимального элемента равен
- Вывод массива после удаления строки и столбца с максимальным элементом.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д