Удалить из массива строку и столбец, на пересечении которых находится минимальный элемент - Pascal ABC
Формулировка задачи:
Помогите исправить ошибку . Задание :Сформировать двумерный массив. Удалить из него строку и столбец, на пересечении
которых находится минимальный элемент.
Решение задачи: «Удалить из массива строку и столбец, на пересечении которых находится минимальный элемент»
textual
Листинг программы
type mtr=array[,]of integer; procedure delete (var a:mtr; var n,l,imin,jmin: byte); begin if imin<n-1 then for var i:=imin to n-2 do for var j:=0 to l-1 do a[i,j]:=a[i+1,j]; dec(n); if jmin<l-1 then for var j:=jmin to l-2 do for var i:=0 to n-1 do a[i,j]:=a[i,j+1]; dec(l); end; var a:mtr; n,l,i,j,imin,jmin:byte; begin write('n,l='); readln(n,l); Setlength(a,n,l); imin:=0; jmin:=0; for i:=0 to n-1 do begin for j:=0 to l-1 do begin a[i,j]:=-50+random(101); write(a[i,j]:4); if a[i,j]<a[imin,jmin] then begin imin:=i; jmin:=j; end; end; writeln; end; writeln; writeln('мин эл=',a[imin,jmin],' строка=',imin+1,' столбец=',jmin+1); delete(a,n,l,imin,jmin); writeln; setlength(a,n,l); for i:=0 to n-1 do begin for j:=0 to l-1 do write(a[i,j]:4); writeln; end; end.
Объяснение кода листинга программы
- Создается тип данных
mtr
, который представляет собой двумерный массив целых чисел. - Создается процедура
delete
, которая принимает в качестве параметров массивa
, индексы начала и конца пересечения, а также минимальный элемент. - В начале процедуры проверяется, находится ли минимальный элемент вне пересечения. Если это так, то он перемещается внутрь пересечения.
- Затем происходит итерация по массиву
a
для обновления элементов. Если текущий элемент меньше минимального, то он заменяется на следующий элемент. Это продолжается до тех пор, пока не будет достигнут конец пересечения. - После завершения итерации обновленные элементы сохраняются в новом массиве.
- Создается переменная
a
типаmtr
. - Читаются значения
n
,l
из стандартного ввода. - Создается новый массив
a
с длинойn
иl
. - Заполняется массив
a
случайными числами. - Находится минимальный элемент в массиве
a
. - Обновляется значение минимального элемента в переменной
imin
. - Обновляется значение минимального элемента в переменной
jmin
. - Выводится на экран информация о минимальном элементе и его положении.
- Вызывается процедура
delete
с параметрамиa
,n
,l
,imin
иjmin
. - Выводится на экран обновленный массив
a
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д