Cod sursa(job #1095675)

Utilizator DjokValeriu Motroi Djok Data 31 ianuarie 2014 17:52:38
Problema Sortare prin comparare Scor 0
Compilator fpc Status done
Runda Arhiva educationala Marime 0.9 kb
uses crt;
 var a:array[1..1000] of longint;
     n,i:longint;

     procedure swap(var x,y:longint);
      var aux:longint;
       begin
        aux:=x;
        x:=y;
        y:=aux;
       end;

     procedure qsort(left,right:longint);
       var i,j,pivot:integer;
        begin
          i:=left; j:=right; pivot:=a[(left+right) div 2];
             repeat
              while a[i]<pivot do inc(i);
              while a[j]>pivot do dec(j);
               if i<=j then begin
                             swap(a[i],a[j]);
                             inc(i);
                             dec(j);
                            end;
             until i>j;
           if j>left then qsort(left,j);
           if i<right then qsort(i,right);
        end;
begin
clrscr;
 readln(n);
  for i:=1 to n do
   readln(a[i]);
   qsort(1,n);
    for i:=1 to n do
     write(a[i],' ');
readln;
end.