Занулить минимальный элемент в каждом столбце матрицы - Turbo Pascal
Формулировка задачи:
Заполнить двумерный массив случ.образомФ,обнулить мин.элемент кв каждом столбце. Вывести оба массива на экран
Решение задачи: «Занулить минимальный элемент в каждом столбце матрицы»
textual
Листинг программы
const n = 5; type matr = array [1..n, 1..n] of integer; procedure PrintMatrix(a: matr); var i, j: byte; begin for i := 1 to n do begin for j := 1 to n do write(a[i, j]:4); writeln; end; end; var a: matr; i, j, imin: byte; begin randomize; for i := 1 to n do for j := 1 to n do a[i, j] := -15 + random(31); PrintMatrix(a); for j := 1 to n do begin imin := 1; for i := 2 to n do if a[i, j] < a[imin, j] then imin := i; a[imin, j] := 0; end; writeln; PrintMatrix(a); end.
Объяснение кода листинга программы
В этом коде реализована процедура для печати матрицы и её нулевого элемента. Вот список описывающих переменных и их значений:
- n - размерность матрицы (константа)
- matr - тип матрицы (массив целочисленных значений)
- a - сама матрица
- i, j - индексы для обхода матрицы
- imin - индекс минимального элемента в текущем столбце
- a[i, j] - элемент матрицы a, расположенный по индексам i и j
- randomize - инициализация генератора случайных чисел
- random(31) - генерация случайного числа в диапазоне от 0 до 30 (включительно)
- PrintMatrix(a) - вывод значений матрицы a на экран
- writeln - вывод строки на экран
- for i := 1 to n do begin ... end - цикл по индексам i от 1 до n
- for j := 1 to n do begin ... end - цикл по индексам j от 1 до n
- a[i, j] := -15 + random(31) - присваивание значения элементу матрицы a
- if a[i, j] < a[imin, j] then - условие для поиска минимального элемента
- a[imin, j] := 0 - присвоение нулевого значения минимальному элементу
- writeln - вывод строки на экран
- PrintMatrix(a) - повторный вывод значений матрицы a на экран
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д