Var ar:array[1..n] of integer; i,p:int64; begin randomize; p:=1; writeln('Array:'); for i:=1 to n do begin ar[i]:=random(-10,10); write(ar[i]:4); if ar[i]<0 then p:=p*ar[i]; end; writeln; write('Res:',p); end.
Пример работы программы: Array: -4 -9 -6 3 6 2 -3 0 -9 -3 Res:17496
// PascalABC.NET 3.1, сборка 1256 от 21.06.2016 begin var a:=ReadArrInteger(ReadInteger('n=')); Writeln('Произведение отрицательных: ', a.Where(x->x<0).Aggregate(BigInteger(1),(x,p)->x*p)) end.