// PascalABC.NET 3.3, сборка 1573 от 04.11.2017
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
a:=(a.Where(t->t<0)+a.Where(t->t>=0)).ToArray; a.Println
end.
Пример
n= 13
-32 46 4 17 -45 1 -4 -24 32 -7 43 27 36
-32 -45 -4 -24 -7 46 4 17 1 32 43 27 36
А вот так примерно учат писать эту же программу в большинстве школ:
const
nn=100;
type
V=array[1..nn] of integer;
var
a,b:V;
i,n,j:byte;
begin
Randomize;
Write('n= '); Read(n);
for i:=1 to n do begin
a[i]:=Random(101)-50;
Write(a[i],' ')
end;
Writeln;
j:=0;
for i:=1 to n do
if a[i]<0 then begin<br> j:=j+1; b[j]:=a[i]
end;
for i:=1 to n do
if a[i]>0 then begin
j:=j+1; b[j]:=a[i]
end;
for i:=1 to n do
Write(b[i],' ');
Writeln
end.