Задан одномерный массив А(N) (N<=60). Найти сумму положительных элементов и произведение...

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

Задан одномерный массив А(N) (N<=60). Найти сумму положительных элементов и произведение отрицательных массива. Если сумма больше произведения, найти максимальный элемент массива, а если нет – выдать об этом сообщение


Информатика (17 баллов) | 98 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
// PascalABC.NET 3.3, сборка 1573 от 04.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println;
  var s:=a.Where(t->t>0).Sum;
  var p:=a.Where(t->t<0).Aggregate(BigInteger(1),(x,y)->x*y);
  Writeln('S = ',s,', П = ',p)
end.

Пример
n= 15
-61 -99 0 -48 -47 66 -27 89 -84 -77 32 -71 25 65 -42
S = 277, П = -7094887924215168
(150k баллов)