PascalABC.NET 3.4.0, сборка 1671 от 31.05.2018
Внимание! Если программа не работает, обновите версию!
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:');
Writeln('*** Исходный массив ***');
var a:=MatrRandom(m,n,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
Writeln('П = ',a.ElementsByRow.Where(t->(t<=0) and (t mod 4=0))<br> .Aggregate(BigInteger(1),(p,q)->p*q))
end.