Из матрицы исключить строку и столбец, содержащие максимальный элемент - 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 - В противном случае происходит сдвиг элементов для удаления столбца с максимальным элементом
- Если индекс максимального элемента равен
- Вывод массива после удаления строки и столбца с максимальным элементом.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д