Soit T un tableau de N nombres (N≤50). Ecrire un algorithme qui inverse, dans T, la première séquence croissante de nombres.
Algorithme Vecteur ;
Var T :Tableau[1..50] de entier ; I,J,X,N :entier ;
Debut
Repeter Lire(N) ; Jusqu’à (N>0) et (N<=50) ;
/ Lecture du vecteur
Pour I ←1 à N Faire Lire(T[I]) ; Fait ; I ←1 ;
/ Position du 1er élément de la séquence (I)
Tantque (I<N) et(T[I]> T[I+1]) Faire I ←I+1 Fait ;
//Position du dernier élément de la séquence s’il existe (J) et permutation
Si I<N Alors J←I+1;
Tantque (J<N) et(T[J]≤ T[J+1]) Faire ←J+1 Fait ;
/ Permutation
Tantque I<J Faire
X ← T[I] ; T[I] ← T[J] ; T[J] ←X ; I ←I+1 ; J ←J-1 ;
Fsi ;
/ Affichage
Fait ;
Pour I ←1 à N Faire Ecrire(T[I]) ; Fait ;
Fin.
Ajouter un commentaire
Veuillez vous connecter pour ajouter un commentaire.
Pas encore de commentaires.