{ Пример 2.5. Дан массив X(N). Получить новый массив Y(N), такой,
что в нем сначала идут положительные числа, затем
нулевые, и затем отрицательные из X.
Тест
╔══════════════════════════════╦═══════════════════════════════╗
║ Данные ║ Результат ║
╠══════════════════════════════╬═══════════════════════════════╣
║ n = 7 ║ ║
║ X = (-1, 2, 0, 4, -3, -2, 0) ║ Y = ( 2, 4, 0, 0, -1, -3, -2) ║
╚══════════════════════════════╩═══════════════════════════════╝
}
Program NewOrder;
Uses Crt;
Var N, i, k : Integer;
X, Y : Array [1..20] of Real;
BEGIN
ClrScr;
Write('Введите N = '); ReadLn(N);
For i := 1 to N do
begin
Write('X[ ', i, ' ] = '); ReadLn(X[i])
end;
k:=0;
For i := 1 to N do { Занесение в Y положительных чисел из Х }
If X[i]>0 then
begin k:=k+1; Y[k]:=X[i]
end;
For i := 1 to N do { Занесение в Y чисел, равных нулю, из Х }
If X[i]=0 then
begin k:=k+1; Y[k]:=X[i]
end;
For i := 1 to N do { Занесение в Y отрицательных чисел из Х }
If X[i]<0 then
begin k:=k+1; Y[k]:=X[i]
end;
Write('О т в е т : полученный массив');
For i := 1 to N do Write(Y[i] : 5 : 1);
WriteLn; ReadLn
END.