В матрице найти номер строки, имеющей максимальную сумму элементов - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Помогите Написать процедуру и функцию, которая находит в прямоугольной матрице номер строки, имеющей максимальную сумму элементов. В основной программе ввести матрицу и проверить работу подпрограмм. Зарание благодарен

Решение задачи: «В матрице найти номер строки, имеющей максимальную сумму элементов»

textual
Листинг программы
{Написать процедуру и функцию, которая находит в прямоугольной 
матрице номер строки, имеющей максимальную сумму элементов. 
В основной программе ввести матрицу и проверить работу подпрограмм.}
 
type
  myArray = array [,] of integer;
 
///Возвращает строку с максимальной суммой элементов  
function IndexMaxSum(A: myArray; n, m: Byte): integer;
begin
  result := 0;
  var maxSum := -100 * n;
  for var i := 0 to n - 1 do begin
    var s := -100 * n;
    for var j := 0 to m - 1 do 
      S := S + a[i, j];
    if maxSum < S then begin
      maxSum := S;
      result := i
    end
  end;
  inc(result)
end;
 
///Вводит массив
procedure InputArray(var A : myArray; n, m: Byte);
begin
  SetLength(A, n, m);
  randomize;
  for var i := 0 to n - 1 do begin
    for var j := 0 to m - 1 do begin
      a[i, j] := random(-100, 200);
      write(a[i, j]:5)
    end;
    writeln
  end
end;
 
var
  n, m: byte;
  A: myArray;
  
begin
  n := 5;
  m := 7;
  InputArray(A, n, m);
  writeln;
  write('Строка с максимальной суммой элементов: ', IndexMaxSum(A, n, m))
end.

Объяснение кода листинга программы

В данном коде реализованы две процедуры:

  1. IndexMaxSum, которая принимает двумерный массив A размером n на m, а также числа n и m (размеры массива) в качестве параметров. Функция находит в матрице строку с максимальной суммой элементов и возвращает её номер.
  2. InputArray, которая принимает двумерный массив A размером n на m и числа n и m в качестве параметров. Процедура заполняет массив случайными числами от -100 до 200 и выводит его на экран. В основной программе объявлены переменные n, m и A типа byte. Значения переменных n и m устанавливаются равными 5 и 7 соответственно. Затем вызывается процедура InputArray, чтобы заполнить массив A случайными числами. После этого выводится сообщение с результатом работы функции IndexMaxSum, которая возвращает номер строки с максимальной суммой элементов массива A.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы