bonjour, j'ai un probleme avec une procedure ou je dois trier les valeurs d'un tableau en ordre croissant
Voici ce que j'ai fait mais ca m'efface toutes les valeurs de mon tableau
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 PROCEDURE Tri11 (Stocks_Lus : IN OUT T_Tableau) IS -- précondition: Au moins deux éléments dans le tableau -- postcondition: Trie le tableau selon un critere donné en ordre croissant ou décroissant J,X,k:Integer; begin k := 1; while stocks_lus(k).num /= -1 loop k:= k+1; end loop; for I in 2..k loop x := stocks_lus(i).num; j := i-1; while j>0 and then stocks_lus(j).num>x loop Stocks_Lus(J+1).Num := Stocks_Lus(J).Num; j := j-1; end loop; stocks_lus(j+1).num := x; end loop; end tri11;
PS: stocks_lus(i).num le tableau a trié et la fin du tableau est signalé quand stocks_lus(i).num = -1
Partager