Hice un programa para ordenar de la manera que tu pediste un array de 10 elementos, espero te sirva.
procedure TForm1.BtnOrdenarClick(Sender: TObject);
var
x, y, tot, aux: integer;
begin
tot := 10; //tot es la variable que me dice cuantos de los
for x := 1 to tot - 1 do //numeros del arreglo no son 0
beginif vec[x] = 0 then
beginfor y := x to tot - 1 do //se recorren todos los valores una unidadvec[y] := vec[y+1]; //hacia atras
vec[tot] := 0; //a la ultima posicion se le da valor de cero
dec(tot);
end;
end;
for x := 1 to tot do //Metodo de burbuja
beginfor y := 1 to tot - 1 do
beginif vec[y] > vec[y+1] then
beginaux := vec[y];
vec[y] := vec[y+1];
vec[y+1] := aux;
end;
end;
end;
end;