
Решить в паскаль! Дана прямоугольная матрица. Найти строку с на меньшей суммой элементов. И если
не сложно опишите действия. Заранее спасибо! 

Ответы на вопрос

Программа:
const n=5; m=6;
var
a:array[1..n,1..m] of integer;
i,j,s,min,k:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(100);
write(a[i,j]:4);
end;
writeln;
end;
min:=0; k:=1;
for j:=1 to m do min:=min+a[1,j];
writeln('s1 = ',min);
for i:=2 to n do
begin
s:=0;
for j:=1 to m do s:=s+a[i,j];
writeln('s',i,' = ',s);
if s<min then begin min:=s; k:=i; end;
end;
writeln('min сумма = ',min,' (',k,'-я строка)');
end.
Пример:
Исходный массив:
24 61 29 35 82 8
98 58 55 2 11 35
14 46 59 55 79 8
4 25 4 48 83 49
96 27 56 87 91 63
s1 = 239
s2 = 259
s3 = 261
s4 = 213
s5 = 420
min сумма = 213 (4-я строка)



Ответ:
begin
var m := 6;
var n := 10;
var a := MatrRandom(m, n);
a.Println;
for var i := 0 to m - 1 do
Println($'Sum(Row({i})) =',a.Row(i).Sum);
a.Rows.Select(x -> x.sum).Numerate(0).MinBy(x -> x[1])[0].Println;
end.
Объяснение:




Конечно, я могу помочь вам решить эту задачу на языке Pascal. Вот пример кода, который найдет строку с наименьшей суммой элементов в прямоугольной матрице:
pascalconst N = 3; // количество строк M = 4; // количество столбцов type Matrix = array[1..N, 1..M] of Integer; var mat: Matrix; rowSum: array[1..N] of Integer; i, j, minSum, minSumRow: Integer; // Функция для нахождения суммы элементов в строке function GetRowSum(row: Integer): Integer; var sum: Integer; begin sum := 0; for j := 1 to M do sum := sum + mat[row, j]; GetRowSum := sum; end; begin // Ввод матрицы с клавиатуры for i := 1 to N do for j := 1 to M do begin Write('Введите элемент [', i, ',', j, ']: '); ReadLn(mat[i, j]); end; // Вычисление суммы элементов для каждой строки for i := 1 to N do rowSum[i] := GetRowSum(i); // Нахождение строки с наименьшей суммой minSum := rowSum[1]; minSumRow := 1; for i := 2 to N do if rowSum[i] < minSum then begin minSum := rowSum[i]; minSumRow := i; end; // Вывод результата WriteLn('Строка с наименьшей суммой элементов: ', minSumRow); end.
В этом коде мы используем переменные N
и M
для определения размеров матрицы. Мы также объявляем тип Matrix
, чтобы удобнее работать с матрицей, и создаем переменные mat
для хранения введенной матрицы и rowSum
для хранения сумм элементов строк.
Код предлагает пользователю ввести элементы матрицы с клавиатуры. Затем он вычисляет сумму элементов для каждой строки, используя функцию GetRowSum
. После этого мы находим строку с наименьшей суммой элементов и выводим ее номер.
Вы можете изменить значения N
и M
для работы с матрицей нужного вам размера.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili