Составить программу для решения следующей задачи: Дана матрица размером m*n и число k...

0 голосов
44 просмотров

Составить программу для решения следующей задачи: Дана матрица размером m*n и число k (1<=k<=m). Найти сумму и произведение элементов k -ой строки данной матрицы


Информатика (77 баллов) | 44 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1374 от 10.01.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var m:=ReadInteger('Количество строк в матрице:');
  var n:=ReadInteger('Количество столбцов в матрице:');
  var k:=ReadInteger('Номер строки для подсчета:');
  Writeln('*** Исходная матрица [',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-50,50);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var b:=a.Row(k-1);
  Writeln('Сумма элементов в выбранной строке: ',b.Sum);
  Writeln('Произведение элементов в выбранной строке: ',
    b.Aggregate(BigInteger(1),(x,y)->x*y))
end.

Пример
Количество строк в матрице: 6
Количество столбцов в матрице: 13
Номер строки для подсчета: 4
*** Исходная матрица [6,13] ***
  -6  19 -16 -42  -2 -13 -11  10 -24  18   9 -21 -17
 -46   3 -13  27  -2 -19  39  12 -23  20 -11  48  43
  -5  40 -41  -2 -27  30  47 -33  38  38 -50  31   4
  20 -46 -46  42  13 -48 -41  50 -23   3 -44 -15   2
  32  20 -26 -34  49  46 -39   6  42  -1   1  29  -5
  29 -17 -34 -33  15 -13  46  44  12  34   8 -15 -43
----------------------------------------------------
Сумма элементов в выбранной строке: -133
Произведение элементов в выбранной строке: -207088709667840000
(150k баллов)