Отыскать в массиве строку с наименьшей суммой элементов - Pascal ABC

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

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

Дан прямоугольный массив целых положительных чисел. Отыскать в массиве строку с наименьшей суммой элементов. Вывести на печать номер строки и сумму ее элементов. Предполагается, что такая строка единственна.

Решение задачи: «Отыскать в массиве строку с наименьшей суммой элементов»

textual
Листинг программы
const
m = 5;
n =4;
var
a:array[1..n,1..m] of integer;
i,j, k, sum, mins: integer;
begin
writeln('Исходный массив');
for i:=1 to n do
    begin
    for j:=1 to m do
        begin
        a[i,j]:=random(10);
        write(a[i,j]:2);
        end;
    writeln;
    end;
mins:=maxint;
k:=0;
for i:=1 to n do
    begin
    sum:=0;
    for j:=1 to m do
        sum:=sum + a[i,j];
    if sum < mins then
        begin
        mins:=sum;
        k:=i;
        end;
    end;
writeln('Минимальная сумма элементов = ',mins,'  в строке  ', k);
end.

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

В данном коде объявлены следующие переменные:

  • m и n - целочисленные константы, которые определяют размер массива и количество строк в массиве.
  • a - массив целых чисел, в котором будут храниться значения строк.
  • i, j, k, sum, mins - целочисленные переменные, которые будут использоваться для обработки массива. Код начинается с вывода исходного массива. Затем происходит итерация по строкам массива. В каждой итерации суммируются значения элементов строки и выводится значение суммируемого элемента. Если сумма текущей строки меньше минимальной суммы, то обновляется значение минимальной суммы и индекс строки, которая содержит минимальную сумму. В конце кода выводится минимальная сумма элементов и индекс строки, содержащей эту сумму.

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

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