[Résolu] Algorithme Aide Urgent
Forum Programmation : [Résolu] Algorithme Aide Urgent
Bonjour, alors voilà j'ai un exercice mais les solutions que je trouvent me paraissent super longues. Donc si vous pourriez me mettre quel algo vous feriez et celà avant demain (eh oui c'est urgent) .
"On demande à l'utilisateur d'entrer successivement 4 nombres entiers et on les écrit dans l'ordre croissant"
On ne doit utiliser que des SI et SINON, pas de TANT QUE et tout .Grand merci a celui qui me repond vite et bien
Message édité par NaSr1 le 05-10-2007 à 11:49:34
Partons de ce que tu aurais fait
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
| CRicky a écrit : Partons de ce que tu aurais fait |
ALGORITHE Croissant
Variable:
nbr1, nbr2, nbr3, nbr4, n°1, n°2, n°3, n°4 : entier
DEBUT
ecrire ("Entrez un nombre entier" )
lire(nbr1)
...
SI (nbr1 < nbr2) ALORS
n°1 <- nbr1
SINON
n°1 <- nbr2
n°2 <- nbr1
SI (nbr1 < nbr3) ALORS
n°1 <-
...
ecrire ("Vos nombres dans l'ordre croissant", n°1 ", ",n°2, ", "n°3, ", ", n°4 )
FIN
Donc plusieurs problèmes, cela risque d'etre long a ecrire comme çà et des problemes a ecrire, si par exemple un cas ne va pas, sa marche pu. En gros je suis un peu perdu
personne ne sait
Ca me serait très utilie si quelqu'un m'aiderait a le faire, juste me dire comment le faire .
Dsl pour le double post mais c'est pour UP
essaie un truc du genre:
liste=[nbr1,nbr2,nbr3,nbr4]
memoire=1
i=1
j=1
tant que j<=4
i=j
tant que i<=4
if liste[memoire]>liste[i] alors
memoire=i
i=i+1
fin tant que
permuter les éléments (liste[j],liste[memoire])
j=j+1
fin tant que
Fin:
Répondre à abel_b
Sans utiliser de "tant que" ou de "selon cas" je ne pense pasqu'il y ait plus rapide que ce que tu as fait.
| NaSr1 a écrit : ALGORITHE Croissant
|
Est-ce que tu as le droit d'utiliser la récursivité ? En fait, ça remplacerait le "tant que"
Sinon, ça prend forcément beaucoup de "si" car il a 24 (4!=4*3*2) possibilités.
Sinon, tu peux toujours prévoir avec un "tant que" comme le montre abel_b et décomposer les boucles.
81F900FA750230EDBADA03ECA80875FBECA808
74FBE4603C0175DFB80300CD10B8004CCD21
Répondre à CRicky
Ouep dsl j'etais parti toute la journée au MGS ^^
Oué parce que en faite c'est mon prof qui nous a fait un exo noté vite fait en 5 min mais en faite il s'est rendu compte que c'était super long.
Et récursivité j'ai pas vu en cours donc je ne pense pas, que des si
Dc c'est long et chiant a faire, car trouver toutes les solutions c'est galère.
Eh biens merci de votre aide
Il y a 1889 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.
