Erreur tri rapide

bzminfo Messages postés 30 Statut Membre -  
bzminfo Messages postés 30 Statut Membre -
salut,
pouvez-vous me dire ce quoi l'erreur de ce programme qui permet de trier un tableau avec la méthode de tri rapide (Quick sort)
j'essayer d'exécuter ce programme mais l'exécution se bloque!!!!!!!il y a une errreur qui une erreur qui m'a fait déchirer les chéveux.
voici le code:
program trirapide;
uses wincrt;
type
   tab=array[1..20]of integer;
var
    t:tab;
    n:integer;
{****************************************}
procedure saisie(var n:integer;var t:tab);
var
i:integer;
begin
    repeat
        write('n = ');readln(n);
    until n>=10;
    randomize;
    for i:=1 to n do
           t[i]:=random(30);
end;
{****************************************}
procedure affiche(n:integer;t:tab);
var
i:integer;
begin
    for i:=1 to n do
        write(t[i]:4);
end;
{****************************************}
procedure tri_rapide(var t:tab;g,d:integer);
var
i,j,aux:integer;
begin
if g<d then
  begin
    i:=g+1;j:=d;
    repeat
        while (i<j)and(t[i]<t[g]) do
              i:=i+1;
        while (i<=j)and(t[j]>=t[g]) do
              j:=j-1;
        if i<j then
           begin
               aux:=t[i];
               t[i]:=t[j];
               t[j]:=aux;
           end;

    until i>j;
    aux:=t[j];
    t[j]:=t[g];
    t[g]:=aux;
    tri_rapide(t,g,j-1);
    tri_rapide(t,j+1,d);
  end;
end;
{****************************************}
begin
    saisie(n,t);
    writeln('les éléments avant TRI : ');
    affiche(n,t);
    tri_rapide(t,1,n);
    writeln('les éléments après TRI : ');
    affiche(n,t);
end.


A voir également:

2 réponses

bzminfo Messages postés 30 Statut Membre 2
 
mais je suis bloqué ?
si j'arrive a trouver l'erreur j'ai pas besoin de poster ce problème,
0
arth Messages postés 10414 Date d'inscription   Statut Contributeur Dernière intervention   1 293
 
Bonjour,

Et quelle est l'erreur en question?
-1