Дан одномерный массив A[n]. Отыскать минимум и среднее значение его отрицательных

Дан одномерный массив A[n]. Отыскать минимум и среднее значение его отрицательных частей. Получить новый массив В[n] методом замены всех малых частей массива A на среднее значение.ПАСКАЛЬ,

Задать свой вопрос
Игорь Кодьев
Просто малое, не по модулю?
2 ответа
Const
   N = 13;
Var
   A,B:array[1..N] of real;
   i:integer;
   Sr,M:real;
Begin
Write('Начальный массив: ');
For i:= 1 to N do
    Begin
    A[i]:=random(21)-10;
    Write(A[i],' ');
    if A[i]lt;0 then Sr:=Sr+A[i];
    End;
Sr:=Sr/N;
M:=A[1];
For i:= 2 to N do
    if A[i]lt;M then M:=A[i];
WriteLn;
Write('Переработанный массив: ');
For i:= 1 to N do
    Begin
    if A[i]=M then B[i]:=Sr
    else B[i]:=A[i];
    Write(B[i]:0:3,' ')
    End
End.
// PascalABC.NET 3.2, сборка 1389 от 01.03.2017
// Внимание! Если программка не работает, обновите версию!

begin
  var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println;
  var negMin:=a.Where(x-gt;xlt;0).Min;
  var negAvg:=a.Where(x-gt;xlt;0).Average;
  var b:=a.Select(x-gt;real(x=NegMin?negAvg:x)).ToArray;
  b.Println
end.

Пример
n= 10
24 -57 1 97 -20 -42 38 22 7 74
24 -39.6666666666667 1 97 -20 -42 38 22 7 74
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт