program hnfd;
label 1;
var
A: array [1 .. 100] of integer;
i, j, n, p: integer;
procedure exchange(var A, b: integer);
var
c: integer;
begin
c := A;
A := b;
b := c;
end;
begin
write('Vvedite RAZMER "N" massiva: ');
readln(n);
for i := 1 to n do
begin
write('A[', i, ']= ');
readln(A[i]);
end;
writeln('ISXODNII massiv: ');
for i := 1 to n do
write(A[i], ' ');
p := n;
for i := 1 to p do
if A[i] < 0 then
begin
for j := p downto i do
if A[j] > 0 then
exchange(A[i], A[j]);
end;
writeln;
writeln;
writeln('PREOBRAZOVANII massiv: ');
for i := 1 to n do
write(A[i], ' ');
readln;
end.