// PascalABC.NET 3.3, сборка 1627 от 27.01.2018// Внимание! Если программа не работает, обновите версию!begin var n:=ReadInteger('n='); var a:=ArrRandom(n,-50,50); a.Println; var (imax,half):=(a.IndexMax,n div 2); if n.IsEven then // все хорошо if imax>=half then begin var sn:=a[half:].Where(t->t<0).Sum; if sn=0 then Writeln('Во второй половине вектора нет отрицательных') else Writeln('Сумма равна ',sn) end else Writeln('Среднее арифметическое равно ',a[:half].Average) else // не учитывать средний if imax=half then Writeln('Максимальный элемент попал в неучитываемую точку') else if imax>half then begin var sn:=a[half+1:].Where(t->t<0).Sum; if sn=0 then Writeln('Во второй половине вектора нет отрицательных') else Writeln('Сумма равна ',sn) end else Writeln('Среднее арифметическое равно ',a[:half].Average)end.