Найти в массиве кроме минимальных значений еще и максимальные - Turbo Pascal
Формулировка задачи:
Помогите, нужно найти кроме минимальных значений еще и максимальные (его адрес в массиве, и потом среди максимальных найти наибольшее значение).
Решение задачи: «Найти в массиве кроме минимальных значений еще и максимальные»
textual
Листинг программы
const nm=100; W=3; type TMatrix = array [1..nm,1..nm] of Integer; procedure MinMax(const a: TMatrix; m, n: Integer); var mn, mx: array [1..nm] of Integer; i, j: Integer; begin for j:=1 to n do begin mn[j]:=1; mx[j]:=1; end; for j:=1 to n do for i:=1 to m do begin if a[mn[j],j]>a[i,j] then mn[j]:=i; if a[mx[j],j]<a[i,j] then mx[j]:=i; end; WriteLn('Min/pos:'); for j:=1 to n do Write(' ',a[mn[j],j]:W); WriteLn; for j:=1 to n do Write(' ',mn[j]:W); WriteLn; WriteLn('Max/pos:'); for j:=1 to n do Write(' ',a[mx[j],j]:W); WriteLn; for j:=1 to n do Write(' ',mx[j]:W); WriteLn; end; var a: TMatrix; m, n, i, j: Integer; begin Randomize; repeat Write('m, n [2..',nm,']: '); ReadLn(m,n); until (m in [2..nm]) and (n in [2..nm]); for i:=1 to m do for j:=1 to n do a[i,j]:=Random(100); for i:=1 to m do begin for j:=1 to n do Write(' ',a[i,j]:W); WriteLn; end; MinMax(a,m,n); end.
Объяснение кода листинга программы
- В начале кода объявляются переменные nm и W, которые представляют собой количество строк и столбцов в массиве соответственно.
- Затем определяется тип данных TMatrix, который представляет собой массив целых чисел.
- Далее объявляется процедура MinMax, которая принимает в качестве параметров массив a, его размерность m и n.
- Внутри процедуры инициализируются два массива mn и mx, которые будут использоваться для поиска минимального и максимального значения в массиве a.
- Затем происходит цикл, в котором происходит сравнение значений элементов массива a и перестановка их в случае необходимости. Это позволяет найти минимальное и максимальное значение в каждой строке.
- После завершения цикла выводятся на экран минимальное и максимальное значение в каждой строке, а также сами значения mn и mx.
- В конце кода считываются значения m и n с помощью функции Randomize, чтобы обеспечить разнообразие входных данных.
- Затем происходит итерация по массиву a, в которой генерируются случайные значения для каждого элемента.
- После этого вызывается процедура MinMax с массивом a, размером m и n.
- Код завершается после вывода на экран минимального и максимального значения в каждой строке.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д