Ecrire un algorithme qui permet de saisir un tableau de 20 entiers et qui le trie en ordre croissant et en ordre décroissant à partir d’une position fixée donnée par l’utilisateur.
Une fois le tableau saisi, l’utilisateur fixe la position, avant laquelle le tableau est trié en ordre croissant et après laquelle le tableau est trié en ordre décroissant.
Déclaration :
Var_position
Var Tab tt[20] : tableau d’entiers
T[1]
T[2]
T[3]
T[4]
T[5]
T[6]
T[7]
T[8]
T[9]
T[10]
... jusqu'a T[20]
PRODECURE Tri_bulle (Tableau a[1:n])
VARIABLE permut : Booleen;
REPETER
permut = FAUX
POUR i VARIANT DE 1 à N-1 FAIRE
SI a[i] > a[i+1] ALORS
echanger a[i] et a[i+1]
permut = VRAI
FIN SI position=var_position
FIN POUR
TANT QUE permut = VRAI
FIN PROCEDURE
PRODECURE Tri_bulle_inverse (Tableau a[1:n])
VARIABLE permut : Booleen;
REPETER
permut = FAUX
POUR i VARIANT DE 1 à N-1 FAIRE
SI a[i] > a[i-1] ALORS
echanger a[i] et a[i-1]
permut = VRAI
FIN SI position=20
FIN POUR
TANT QUE permut = VRAI
FIN PROCEDURE
voila, est ce correct ?
Partager