Дан одномерный массив A[n]. Найти сумму отрицательных элементов. Получить новый массив B[n] путем замены нулевых элементов на полученную сумму. pascal
Answers & Comments
vunderkid// PascalABC.NET 3.2, сборка 1509 от 27.07.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(ReadInteger('n='),-10,10); a.Println; var s:=a.Where(x->x<0).Sum; // сумма отрицательных элементов var b:=a.Select(x->x=0?s:x).ToArray; b.Println end.
Answers & Comments
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),-10,10); a.Println;
var s:=a.Where(x->x<0).Sum; // сумма отрицательных элементов
var b:=a.Select(x->x=0?s:x).ToArray; b.Println
end.
Пример
n= 20
1 6 2 4 2 3 5 -8 2 -6 0 1 -7 0 -7 8 -4 -8 -1 -8
1 6 2 4 2 3 5 -8 2 -6 -49 1 -7 -49 -7 8 -4 -8 -1 -8