В одномерном массиве размером N определить среднее значение элементов. Найти индекс...

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

В одномерном массиве размером N определить среднее значение элементов. Найти индекс элемента массива наиболее близкого к среднему значению.(паскаль)


Информатика (20 баллов) | 63 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Const
K = 13;
Var
A:array[1..K] of integer;
i,n:integer;
Sr,d:real;
Begin
For i:= 1 to K do
    Begin
    A[i]:=random(21)-10;
    Write(A[i],' ');
    Sr:=Sr+A[i];
    End;
WriteLn;
Sr:=Sr/K;
n:=1;
d:=abs(Sr-A[n]);
For i:= 2 to K do
    Begin
    if abs(A[i]-Sr)       Begin
       n:=i;
       d:=abs(Sr-A[n]);
       End;
    End;
WriteLn('Sr = ',Sr);
WriteLn('Номер ближайшего к среднему арифметическому: ',n);
End.

(34.0k баллов)
0 голосов

//PascalABC.NET 3.2

begin
  var a := ReadArrInteger('Введите элементы массива:', ReadInteger('Размер массива:'));
  var v := a.Average; Writeln('Среднее значение: ', v);
  Writeln('Индекс элемента массива, наиболее близкого к среднему значению: ', a.Select(x -> abs(x - v)).ToArray.IndexMin)
end.

(13.3k баллов)