Найти номер строки матрицы с минимальной суммой элементов - PascalABC.NET
Формулировка задачи:
5) Заполнить случайными значениями матрицу произвольного размера, вывести на экран. Найти номер строки матрицы с минимальной суммой элементов
Решение задачи: «Найти номер строки матрицы с минимальной суммой элементов»
textual
Листинг программы
begin var a := MatrRandomInteger(ReadInteger('Строк m ='), ReadInteger('Столбцов n =')); WriteLn('Матрица:'); a.Println; var s := a.Row(0).Sum; var n := 1; for var i := 1 to a.GetLength(0)-1 do if a.Row(i).Sum < s then (s, n) := (a.Row(i).Sum, i+1); WriteLn('Минимальная сумма в строке ', n); end.
Объяснение кода листинга программы
- var a := MatrRandomInteger(ReadInteger('Строк m ='), ReadInteger('Столбцов n ='));
В этой строке кода происходит инициализация матрицы
a
случайными целыми числами с помощью функцииMatrRandomInteger
. Параметры функцииReadInteger
используются для определения количества строк и столбцов матрицы. - WriteLn('Матрица:'); a.Println;
Здесь выводится сообщение
Матрица:
и затем сама матрицаa
с помощью методаPrintln
. - var s := a.Row(0).Sum; var n := 1;
В этой строке инициализируются переменные
s
иn
.s
присваивается сумма элементов первой строки матрицыa
, аn
присваивается 1, так как предполагается, что первая строка имеет минимальную сумму. - for var i := 1 to a.GetLength(0)-1 do Это цикл, который проходит по всем строкам матрицы, начиная со второй строки и до предпоследней.
- if a.Row(i).Sum < s then (s, n) := (a.Row(i).Sum, i+1);
В этой строке сравнивается сумма элементов текущей строки с переменной
s
. Если сумма текущей строки меньше, то значения переменныхs
иn
обновляются. - WriteLn('Минимальная сумма в строке ', n); После завершения цикла выводится сообщение с минимальной суммой в строке и номером этой строки.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д