Bonjour, j'ai un devoir maison a faire sur un algorithme et je ne comprend pas du tout comment il faut s'y prendre. Voici l'énoncé :
Entrées :
Saisir n : entier naturel supérieur à 2
Saisir une liste de réels : x1, x2, ... xn
Traitement :
Pour i allant jusqu'à n-1
j prend la valeur n
Tant que i < j
Saisir xj < xj-1
Échanger xj et xj-1 dans la liste
Finsi
j prend la valeur j-1
Fintantque
Finpour
Sortie :
Afficher la liste x1, x2...,xn
Faire fonctionner l'algorithme en complétant le tableau :
i 1 1 ...
j 4 3 ...
Liste 38192 ... ...
Bonjour,
Algorithme extrêmement classique (pour ceux qui savent )
L'as-tu fait fonctionner ? Il n'y a pas d'autre solution pour comprendre ce qu'il fait.
Et quel est le tableau que tu n'as pas recopié ?
Et pour ceux qui voudraient tester cet algorithme avec Algobox :
1 VARIABLES
2 n EST_DU_TYPE NOMBRE
3 x EST_DU_TYPE LISTE
4 i EST_DU_TYPE NOMBRE
5 j EST_DU_TYPE NOMBRE
6 A EST_DU_TYPE NOMBRE
7 DEBUT_ALGORITHME
8 LIRE n
9 POUR i ALLANT_DE 1 A n
10 DEBUT_POUR
11 LIRE x[i]
12 FIN_POUR
13 POUR i ALLANT_DE 1 A n-1
14 DEBUT_POUR
15 j PREND_LA_VALEUR n
16 TANT_QUE (i < j) FAIRE
17 DEBUT_TANT_QUE
18 SI ( x[j] < x[j-1] ) ALORS
19 DEBUT_SI
20 A PREND_LA_VALEUR x[j-1]
21 x[j-1] PREND_LA_VALEUR x[j]
22 x[j] PREND_LA_VALEUR A
23 FIN_SI
24 j PREND_LA_VALEUR j-1
25 FIN_TANT_QUE
26 FIN_POUR
27 POUR i ALLANT_DE 1 A n
28 DEBUT_POUR
29 AFFICHER x[i]
30 FIN_POUR
31 FIN_ALGORITHME
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :