Вмассиве а1,а2,а3…а10 заменить на 5 все элементы, равные и большие среднего арифметического, и на 0 – меньшие среднего арифметического всех элементов массива. вывести на экран полученный массив.
Const K = 10; Var A:array[1..K] of integer; i:integer; Sr:real; Begin Write('Исходный массив: '); For i:= 1 to K do Begin A[i]:=random(21)-10; Write(A[i],' '); Sr:=Sr+A[i]; End; Sr:=Sr/K; WriteLn; WriteLn('Среднее арифметическое: ',Sr); Write('Переработаный массив: '); For i:= 1 to K do Begin if A[i]<Sr then A[i]:=0 else A[i]:=5; Write(A[i],' '); End; End.
K = 10;
Var
A:array[1..K] of integer;
i:integer;
Sr:real;
Begin
Write('Исходный массив: ');
For i:= 1 to K do
Begin
A[i]:=random(21)-10;
Write(A[i],' ');
Sr:=Sr+A[i];
End;
Sr:=Sr/K;
WriteLn;
WriteLn('Среднее арифметическое: ',Sr);
Write('Переработаный массив: ');
For i:= 1 to K do
Begin
if A[i]<Sr then A[i]:=0
else A[i]:=5;
Write(A[i],' ');
End;
End.
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(10,30,50); a.Println;
var m:=a.Average;
a.Transform(x->x<m?0:5); a.Println;
end.
Пример
39 44 33 47 31 35 32 36 35 37
5 5 0 5 0 0 0 0 0 5