Дан двумерный массив A[m,n].Найти произведение отрицательных элементов массив...

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

Дан двумерный массив A[m,n].Найти произведение отрицательных элементов массив а.Результаты выдать на экран.НУЖЕН ПАСКАЛЬ


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

begin
  var m:=ReadInteger('Количество строк в массиве:');
  var n:=ReadInteger('Количество столбцов в массиве:');
  Writeln('*** Исходный массив [',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  Writeln('Произведение отрицательных: ',
      a.ElementsByRow.Where(x->x<0).Aggregate(BigInteger(1),(x,y)->(x*y)))
end.

Пример
Количество строк в массиве: 5
Количество столбцов в массиве: 10
*** Исходный массив [5,10] ***
 -81 -56  21  11  -1 -74  25  52 -89 -13
  99  59   9  94  -8 -56  99  45  20  11
 -93  90 -20  73 -13  69  -4  90  88 -25
  72 -94 -96 -86 -88 -35  76 -34 -63 -64
 -78 -98  16  73  34 -66  48  93 -74  42
----------------------------------------
Произведение отрицательных: -5146553166409683850017552514909470720000

(150k баллов)