Cod sursa(job #1199826)

Utilizator Ysaika2Neacsu stefan Ysaika2 Data 20 iunie 2014 19:46:37
Problema Sortare prin comparare Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 1.03 kb
type vector=array[1..50] of longint;
var v,w:vector; nr,n,min,i:longint;
    f:text;



procedure afisare(n:integer; var v:vector);
var f:text;
begin
  if n>0 then
    begin
      afisare((n-1),v);
      write(f,v[n],' ');
      close(f);
    end;end;
procedure pozitionare(var v:vector;n,p,u:integer; var poz:integer);
var i,j,aux,x,k:integer;
begin
  i:=p;
  j:=u;      x:=0;
  while i<j do
    begin nr:=nr+1;
          if v[i]>v[j] then
             begin aux:=v[i];
                   v[i]:=v[j];
                   v[j]:=aux;
                   x:=x+1;
             end;
             if x mod 2=0 then j:=j-1
             else i:=i+1;
      end;
      poz:=i;
end;
procedure quick_sort(var v:vector;p,u:integer);
var poz:integer;
begin
  if p<u then
    begin
       pozitionare(v,n,p,u,poz);
       quick_sort(v,p,poz-1);
       quick_sort(v,poz+1,u);
    end;
end;
begin
assign(f,'algsort.in'); reset(f);
readln(f,n);
for i:=1 to n do
 read(f,v[i]);
quick_sort(v,1,n);
afisare(n,v);
close(f);
end.