algorithme tribulle Variables t est un tableau [1..10] d'en�ers i,j,x sont des en�ers test est un booleen Debut pour i:= 1 a 10 faire lire (t[i]) fin pour repeter test:=faux pour i:=1 a 9 faire si t[i] > t[i+1] alors x:=t[i] t[i]:=t[i+1] t[i+1]:=x test:=vrai fin si fin pour jusqu'a test = faux pour i:=1 a 10 faire ecrire(t[i]) fin pour fin. explica�on de l'algorithme: Cet algorithme est une implémenta�on du tri à bulles, qui consiste à répéter plusieurs fois le parcours d'un tableau en comparant les éléments voisins et en les échangeant s'ils sont mal placés. Voici un exemple de fonc�onnement de l'algorithme avec un tableau de 5 en�ers : Soit le tableau T = [7, 2, 9, 1, 6] Première itéra�on : on compare chaque élément avec son voisin de droite et on échange les éléments mal placés. On ob�ent le tableau T = [2, 7, 1, 6,9]. Comme il y a eu au moins un échange, on doit répéter l'opéra�on. Deuxième itéra�on : on compare chaque élément avec son voisin de droite et on échange les éléments mal placés. On ob�ent le tableau T = [2, 1, 6, 7, 9]. Comme il y a eu au moins un échange, on doit répéter l'opéra�on. Troisième itéra�on : on compare chaque élément avec son voisin de droite et on échange les éléments mal placés. On ob�ent le tableau T = [1, 2, 6, 7, 9]. Comme il n'y a pas eu d'échange cete fois-ci, le tableau est trié. Le tableau final trié est donc T = [1, 2, 6, 7, 9]. Notez que l'algorithme parcourt le tableau plusieurs fois tant qu'il y a des échanges à effectuer, jusqu'à ce que le tableau soit trié dans l'ordre croissant. -------------------------------------------------------------------------------------------------------------------------------------- explique moi le role de la boucle repeter avec un exemple svp! le reponse: Prenons l'exemple suivant pour illustrer le rôle de la boucle "repeter...jusqu'a test = faux" : Soit le tableau T = [6, 2, 8, 4, 7]. Première itéra�on : L'algorithme parcourt le tableau et compare chaque élément avec son voisin de droite et échange les éléments mal placés si nécessaire. Après cete première itéra�on, le tableau est modifié et devient T = [2, 6, 4, 7, 8]. La variable "test" est mise à "vrai" car des échanges ont été effectués. L'algorithme doit donc répéter l'opéra�on. Deuxième itéra�on : L'algorithme parcourt à nouveau le tableau modifié et effectue les échanges nécessaires. Le tableau devient T = [2, 4, 6, 7, 8]. La variable "test" est à nouveau mise à "vrai" car des échanges ont été effectués. L'algorithme doit encore répéter l'opéra�on. Troisième itéra�on : L'algorithme parcourt le tableau modifié et effectue les échanges nécessaires. Le tableau devient T = [2, 4, 6, 7, 8]. Cete fois-ci, aucun échange n'a été effectué pendant la boucle "pour i:=1 a 9 faire" et la variable "test" reste à "faux". Cela signifie que le tableau est trié et l'algorithme peut s'arrêter. En résumé, la boucle "repeter...jusqu'a test = faux" permet de répéter les opéra�ons de parcours et d'échanges jusqu'à ce que le tableau soit trié. L'algorithme con�nue à répéter cete boucle jusqu'à ce qu'aucun échange ne soit effectué lors d'une itéra�on, ce qui signifie que le tableau est trié et que l'algorithme peut s'arrêter. j'ai pas compris pourquoi pour i:=1 a 9 faire La boucle "pour i:=1 a 9 faire" parcourt les éléments du tableau à trier, du premier élément (index 1) jusqu'au neuvième élément (index 9). Pour chaque élément i, l'algorithme compare sa valeur avec celle de son voisin de droite (élément i+1). Si l'élément i est plus grand que l'élément i+1, alors les deux éléments sont échangés. Il n'est pas nécessaire de comparer le dernier élément (index 10) avec son voisin de droite car il n'y a pas de voisin de droite pour le dernier élément. C'est pourquoi la boucle s'arrête à 9 (i.e. "pour i:=1 a 9 faire") et non pas à 10.