Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Algorithme : Test & Boucle

Posté par
Shash
03-01-10 à 12:25

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   ...   ...

Posté par
Coll Moderateur
re : Algorithme : Test & Boucle 03-01-10 à 14:29

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é ?

Posté par
Coll Moderateur
re : Algorithme : Test & Boucle 03-01-10 à 14:45

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

Posté par
Shash
re : Algorithme : Test & Boucle 03-01-10 à 16:46

Je l'es déjà fait fonctionner avec la liste 7316 mais en faite je n'arrive pas a le refaire.

Pour c'est :
Entrées :
n=4    x2=8  x4=9
x1=3   x3=1  x5=2

Traitement : Pour i allant de 1 à 3
i=1
j=4
  i<j ?
  1<4 Oui
  

Et a partir de là je comprend pas pour :
   Si xj < xj-1
       Échanger xj et xj-1 dans la liste
    Finsi



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1675 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !