// PascalABC.NET 3.3, сборка 1607 от 31.12.2017 // Внимание! Если программа не работает, обновите версию!
begin var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:'); Writeln('*** Исходная матрица ***'); var a:=MatrRandom(m,n,-99,99); a.Println(4); Writeln(4*a.ColCount*'-'); var (s,p):=(0,BigInteger(1)); for var i:=0 to m-1 do if i.IsEven then p*=a.Row(i).Where(t->t<0).Aggregate(BigInteger(1),(x,y)->x*y) else s+=a.Row(i).Where(t->t>0).Sum; Writeln('S = ',s,', П = ',p) end.
// Внимание! Если программа не работает, обновите версию!
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в матрице:');
Writeln('*** Исходная матрица ***');
var a:=MatrRandom(m,n,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
var (s,p):=(0,BigInteger(1));
for var i:=0 to m-1 do
if i.IsEven then
p*=a.Row(i).Where(t->t<0).Aggregate(BigInteger(1),(x,y)->x*y)
else
s+=a.Row(i).Where(t->t>0).Sum;
Writeln('S = ',s,', П = ',p)
end.