
Voici une procédure récursive qui permet de trier un tableau de n entiers en utilisant la méthode de tri à bulles :
Procedure Tri_bulles (var t : TAB; n : integer);
Var i, aux : integer;
Function Trier (t : TAB; n : integer) : Boolean;
Var ok : boolean; i : integer;
Begin
ok := true; i := 1;
Repeat
If t[i + 1] < t[i] Then ok := false
Else i := i + 1;
Until ((Not ok) or (i >= n));
Trier := ok;
End;
Begin
If Not Trier (t, n) Then
Begin
For i := 1 To n - 1 Do
If t[i] > t[i + 1] Then
Begin
aux := t[i];
t[i] := t[i + 1];
t[i + 1] := aux;
End;
Tri_bulles (t, n);
End;
End;
Je vous invite à me faire part de votre critiques et suggestions à l’adresse email suivante Lazhar.zouari@laposte.net