uses crt;
var
x:array[1..50]of integer;
y:array[1..5]of real;
i,sumot,sump,kolot,kolp,sum:integer;
sr:real;
begin clrscr;
for i:=1 to 50 do
begin
x[i]:=random(20)-10;
write(x[i],' ');
end;
writeln;
sump:=0; sumot:=0;
kolp:=0; kolot:=0;
for i:=1 to 50 do
begin
if x[i]>0 then
begin
sump:=sump+x[i];
inc(kolp);
end;
if x[i]<0 then
begin
sumot:=sumot+x[i];
inc(kolot);
end;
end;
sum:=0;
for i:=1 to 50 do
sum:=sum+x[i];
sr:=sum/50;
y[1]:=abs(sumot);
y[2]:=sump;
y[3]:=sr;
y[4]:=kolot;
y[5]:=kolp;
writeln;
for i:=1 to 5 do
write(y[i]:2:2,' ');
readkey;
end.
Вариант 2
uses crt;
var x:array[1..100] of real;
y:array[1..5] of real;
sum,sum2,sum1,sr:real;
i,n,pol,otr:integer;
begin
ClrScr;
Randomize;
repeat
Write('n=');
Readln(n);
until (n>1) and (n<=50);
for i:=1 to n do
begin
x[i]:=-10+random(20);
Write(x[i]:5:1);
end;
for i:=1 to n do
begin
sum1:=0;
sum2:=0;
sum:=0;
sum:=sum+x[i];
if x[i]<0 then
begin
otr:=otr+1;
sum1:=sum1+x[i];
sum1:=abs(sum1);
end;
if x[i]>0 then
begin
pol:=pol+1;
sum2:=sum2+x[i];
end;
sr:=sum/n;
y[1]:=sum1;
y[2]:=sum2;
y[3]:=sr;
y[4]:=otr;
y[5]:=pol;
end;
Writeln;
for i:=1 to 5 do
Write(y[i]:5:1);
Readln;
end.
Вариант 3
uses crt;
var x:array[1..100] of real;
y:array[1..5] of real;
sum,sum2,sum1,sr:real;
i,n,pol,otr:integer;
begin
ClrScr;
Randomize;
repeat
Write('n='); {вводим кол-во элементов массива х}
Readln(n);
until (n>1) and (n<=50); {проверка на соблюдение условия}
for i:=1 to n do
begin
x[i]:=-10+random(20); {заполнение массива х различными числами}
Write(x[i]:5:1); {вывод на экран массив}
end;
for i:=1 to n do
begin
sum1:=0;
sum2:=0;
sum:=0;
sum:=sum+x[i]; {находим сумму элементов массива}
if x[i]<0 then {если элемент меньше 0}
begin
otr:=otr+1; {считаем кол-во отрицательных}
sum1:=sum1+x[i];
sum1:=abs(sum1); {находим абсолютную величину, т.е по модулю}
end;
if x[i]>0 then {если элемент больше 0}
begin
pol:=pol+1; {считаем кол-во положительных}
sum2:=sum2+x[i]; {находим сумму}
end;
sr:=sum/n; {находим среднее арифметическое}
y[1]:=sum1; {каждому элементу массива y присваеваем значение по условию}
y[2]:=sum2; {....}
y[3]:=sr; {....}
y[4]:=otr; {....}
y[5]:=pol; {.....}
end;
Writeln;
for i:=1 to 5 do
Write(y[i]:5:1); {выводим массив y}
Readln;
end.