uses crt;
const n=10;
var m:array[1..n]of real;
i,j,max,k:integer;
a,b,s,x:real;
begin
clrscr;
writeln('Массив -> ');
for i:=1 to n do read(m[i]);
readln;
repeat
writeln('A,B -> ');
readln(a,b);
until a<b;
max:=1;
for i:=1 to n do if abs(m[i])>abs(m[max]) then max:=i;
writeln('Номер максимального по модулю элемента - ',max);
k:=1;
while (k<n) and (m[k]<=0) do inc(k);
s:=0;
for i:=k+1 to n do s:=s+m[i];
writeln('Сумма после первого положительного = ',s);
for i:=1 to n do
for j:=1 to n-1 do
if ((trunc(m[j])>b) or (trunc(m[j])<a)) and (trunc(m[j+1])>=a) and (trunc(m[j+1])<=b) then
begin
x:=m[j];
m[j]:=m[j+1];
m[j+1]:=x;
end;
writeln('Отсортированный массив');
for i:=1 to n do write(m[i],' ');
readln;
end.