PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018
Внимание! Если программа не работает, обновите версию!
begin
Writeln('*** Исходный массив ***');
var a := MatrRandom(7, 8, -99, 99);
a.Println(4); Writeln(4 * a.ColCount * '-');
var s := a.ElementsByRow.Where(t -> t <> 0);
Writeln('N = ', s.Count, ', П = ',
s.Aggregate(BigInteger(1), (p, q)-> p * q))
end.