Вопрос задан 09.03.2021 в 23:13. Предмет Информатика. Спрашивает Хакимова Альбина.

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

не сложно опишите действия. Заранее спасибо! ​
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Белый Илья.

Программа:

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-я строка)

0 0
Отвечает Исаенко Катерина.

Ответ:

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.

Объяснение:


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я могу помочь вам решить эту задачу на языке Pascal. Вот пример кода, который найдет строку с наименьшей суммой элементов в прямоугольной матрице:

pascal
const 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 для работы с матрицей нужного вам размера.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос