С помощью процедуры вывести строку, сумма элементов которой максимальна - Pascal
Формулировка задачи:
С помощью процедуры вывести строку, сумма элементов которой максимальна.(заранее спасибо)
Решение задачи: «С помощью процедуры вывести строку, сумма элементов которой максимальна»
textual
Листинг программы
const n = 5; m = 8; type matrix = array [1..n, 1..m] of integer; var x: matrix; i, j: integer; procedure Sum(a: matrix); var k, i, j, s, summax, sum: integer; begin summax := a[1, 1]; for i := 1 to n do begin sum := 0; for j := 1 to m do sum := sum + a[i, j]; if sum > summax then begin summax := sum; k := i; end; end; write('Строка ', k, ': '); for j := 1 to m do write(a[k, j]:4); end; begin writeln('Исходная матрица:'); for i := 1 to n do begin for j := 1 to m do begin x[i, j] := random(21) - 10; write(x[i, j]:4); end; writeln; end; sum(x); end.
Объяснение кода листинга программы
- Объявлены константы n = 5 и m = 8, а также тип данных matrix = array [1..n, 1..m] of integer.
- Объявлена переменная x: matrix, которая будет представлять собой матрицу размером 5x8.
- В основной части программы выводится исходная матрица x размером 5x8, заполненная случайными числами от -10 до 10 с шагом 1.
- Далее вызывается процедура Sum(a: matrix), которая принимает на вход матрицу a и выполняет следующие действия: а) Инициализирует переменную summax значением элемента a[1, 1]. б) Проходит по всем строкам матрицы a с помощью двух вложенных циклов. в) Внутри второго цикла считает сумму элементов текущей строки. г) Если текущая сумма больше значения summax, то обновляет summax и сохраняет номер строки k. д) По окончании внутренних циклов выводит на экран строку с номером k и значениями её элементов.
- После вывода исходной матрицы x вызывается процедура Sum(x), которая находит строку с максимальной суммой элементов.
- В конце программы выводится результат.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д