A voir également:
- Algorithme maximum de 3 nombres
- Algorithme afficher le plus grand nombre - Meilleures réponses
- Algorithme maximum et minimum de 3 nombres - Meilleures réponses
- Exercice simple d'algorithmique ✓ - Forum - Algorithmes / Méthodes
- Boucle avec maximum et minimum! ✓ - Forum - Algorithmes / Méthodes
- Exos corriges d'algorithme ✓ - Forum - Algorithmes / Méthodes
- Algorithmes maximum et minimum - Forum - Algorithmes / Méthodes
- Aide pour calculer max et min - Forum - Programmation
7 réponses
dedian_
- Messages postés
- 119
- Date d'inscription
- jeudi 15 novembre 2007
- Statut
- Membre
- Dernière intervention
- 2 avril 2012
Si tu veux utiliser cette facon de faire il te faudra ajouter 2 autres variables qui sont N3 et max. ensuite tu modifie ton algo de cette facon:
Algorithme Comparaison_Rapide
Variables: N1,N2,N3,max (flèche d'affectation) réel
DEBUT
Ecrire("Tapez le premier nombre:")
Lire(N1)
Ecrire("Tapez le deuxieme nombre:")
Lie(N2)
Ecrire("Tapez le troisieme nombre:")
Lie(N3)
Si(N1>N2) alors
max=N1
Sinon Si(N2>N3) alors
max= N2
Sinon
max=N3
Ecrire("Le plus grand nombre est:",max)
fin si
FIN
NB: pour 4 nombres tu n'auras donc qu'ajouter une variable N4 et une nouvelle condition si
Algorithme Comparaison_Rapide
Variables: N1,N2,N3,max (flèche d'affectation) réel
DEBUT
Ecrire("Tapez le premier nombre:")
Lire(N1)
Ecrire("Tapez le deuxieme nombre:")
Lie(N2)
Ecrire("Tapez le troisieme nombre:")
Lie(N3)
Si(N1>N2) alors
max=N1
Sinon Si(N2>N3) alors
max= N2
Sinon
max=N3
Ecrire("Le plus grand nombre est:",max)
fin si
FIN
NB: pour 4 nombres tu n'auras donc qu'ajouter une variable N4 et une nouvelle condition si
dedian_
- Messages postés
- 119
- Date d'inscription
- jeudi 15 novembre 2007
- Statut
- Membre
- Dernière intervention
- 2 avril 2012
Tu as parfaitement raison. j'ai sauté une etape dans mon alogo. mais je pense que tout le monde fait des erreurs. La prochaine fois essayes de rester humble et surtout evite d'utiliser le mot "betise" je trouve ça grossier et vilain.
Merci
Merci
poukkid
- Messages postés
- 106
- Date d'inscription
- mercredi 20 mai 2009
- Statut
- Membre
- Dernière intervention
- 11 avril 2012
Pardon d'avoir été insultant. D'autant que ce qui m'a réellement géné, ce n'est pas l'erreur dans l'algo, c'est que tu donnes une solution toute faite à quelqu'un qui apprend l'algorithmique, et qui a l'air d'être à ses débuts... mieux vaut guider et aider la personne a chercher par soi-même...
Doctor C
- Messages postés
- 627
- Date d'inscription
- mardi 12 juin 2007
- Statut
- Membre
- Dernière intervention
- 19 février 2016
Sans te donner la réponse, voici quelques indices.
- Tes éléments doivent être placés dans un tableau (ou une liste).
- Tu dois avoir une boucle pour passer au travers de chaque élément du tableau.
- Tu peux utiliser une variable pour stocker le plus grand élément trouvé pendant que tu boucles.
Exemple:
Tu as 3 nombres dans un tableau; [1,3,2] ainsi qu'une variable max qui contient le nombre le plus élévé (sera le bon à la fin du traitement seulement).
tableau = [1,3,2]
max = null
Le premier nombre du tableau (1) est-il plus grand que max (null)? Oui donc max = 1
Le deuxième nombre du tableau (3) est-il plus grand que max (1)? Oui donc max = 3
Le troisième nombre du tableau (2) est-il plus grand que max (3)? Non donc max ne change pas, il reste 3.
Voilà, le max est 3.
Maintenant, il ne te reste qu'à transformer ça en algo!
Echo "Lima Mike Alfa";
- Tes éléments doivent être placés dans un tableau (ou une liste).
- Tu dois avoir une boucle pour passer au travers de chaque élément du tableau.
- Tu peux utiliser une variable pour stocker le plus grand élément trouvé pendant que tu boucles.
Exemple:
Tu as 3 nombres dans un tableau; [1,3,2] ainsi qu'une variable max qui contient le nombre le plus élévé (sera le bon à la fin du traitement seulement).
tableau = [1,3,2]
max = null
Le premier nombre du tableau (1) est-il plus grand que max (null)? Oui donc max = 1
Le deuxième nombre du tableau (3) est-il plus grand que max (1)? Oui donc max = 3
Le troisième nombre du tableau (2) est-il plus grand que max (3)? Non donc max ne change pas, il reste 3.
Voilà, le max est 3.
Maintenant, il ne te reste qu'à transformer ça en algo!
Echo "Lima Mike Alfa";
KX
- Messages postés
- 16248
- Date d'inscription
- samedi 31 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 20 février 2021
Pour trois variables, on n'est pas obligé de passer par un tableau, on peut bien sûr, mais il suffit de quelques if bien placés pour faire ça sans encombre...
Mais tu as raison des indices bien donnés valent mieux que faire l'exo à sa place !
Mais tu as raison des indices bien donnés valent mieux que faire l'exo à sa place !
KX
- Messages postés
- 16248
- Date d'inscription
- samedi 31 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 20 février 2021
réutilisabilité existe en jargon informatique, ça consiste à reprendre un code déjà fait (et optimisé depuis belle lurette) mais du coup ça va à l'encontre de ce genre d'exercices très scolaire...
KX
- Messages postés
- 16248
- Date d'inscription
- samedi 31 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 20 février 2021
Facile, tu prends le max, tu l'affiches...
La confiance n'exclut pas le contrôle
La confiance n'exclut pas le contrôle
anas212
- Messages postés
- 32
- Date d'inscription
- jeudi 30 décembre 2010
- Statut
- Membre
- Dernière intervention
- 8 mars 2011
Bonjour,
Je vous remercie pour vos suggestions.
Mais peut-on résoudre cet algorithme en utilisant les simples notions de ce dernier ? voilà un exemple utilisé pour comparer deux nombres (trouver le plus grand) :
Algorithme Comparaison_Rapide
Variables: N1,N2 (flèche d'affectation) réel
DEBUT
Ecrire("Tapez le premier nombre:")
Lire(N1)
Ecrire("Tapez le deuxieme nombre:")
Lie(N2)
Si(N1>N2) alors
Ecrire("Le plus grand nombre est :",N1)
Sinon
Ecrire("Le plus grand nombre est:",N2)
fin si
FIN
Quand vous dites tableau, est ce que vous voulez dire la structure à choix multiple? de ce type :
Suivant Variable Faire
Valeur1:Instructions1
Valeur2:Instructions2
.
.
.
Valeur n: Instructions n
fin suivant
MERCI D'AVANCE
Je vous remercie pour vos suggestions.
Mais peut-on résoudre cet algorithme en utilisant les simples notions de ce dernier ? voilà un exemple utilisé pour comparer deux nombres (trouver le plus grand) :
Algorithme Comparaison_Rapide
Variables: N1,N2 (flèche d'affectation) réel
DEBUT
Ecrire("Tapez le premier nombre:")
Lire(N1)
Ecrire("Tapez le deuxieme nombre:")
Lie(N2)
Si(N1>N2) alors
Ecrire("Le plus grand nombre est :",N1)
Sinon
Ecrire("Le plus grand nombre est:",N2)
fin si
FIN
Quand vous dites tableau, est ce que vous voulez dire la structure à choix multiple? de ce type :
Suivant Variable Faire
Valeur1:Instructions1
Valeur2:Instructions2
.
.
.
Valeur n: Instructions n
fin suivant
MERCI D'AVANCE
poukkid
- Messages postés
- 106
- Date d'inscription
- mercredi 20 mai 2009
- Statut
- Membre
- Dernière intervention
- 11 avril 2012
Non, un tableau est une variable également.
la structure dont tu parles est aussi appelé switch/case (ou autre selon les langages) qui joue exactement le même role qu'un "SI....ALORS... SINON SI... ALORS....." mais qui est plus pratique et surtout plus lisible quand il ya beaucoup de choix, pour éviter de faire des SINON SI... SINON SI... à n'en plus finir...
si tu ne connais pas encore les tableau alors attends de les étudier avant de les utiliser, pour information, c'est une variable qui peut contenir plusieurs valeurs dans ses "cases". par exemple la case 1 d'une variable "tablo" peut contenir la valeur 7, tandis que la case 2 de la variable "tablo" peut contenir la valeur 18.
Ton exemple est tres bien, il te manque plus qu'à rajouter la troisième variable lue (N3) et il va te falloir une variable intermédiaire pour mieux t'y retrouver.
Ce que tu veux faire lorsque tu auras comparé N1 et N2 n'est plus de dire qu'un des deux est plus grand, mais de récupérer la valeur du plus grand des deux pour pouvoir la comparer à N3. c'est ici que tu vas utiliser ta variable intermédiaire, pour récupérer la plus grande valeur de N1 et N2.
Il ne te restera plus ainsi qu'à comparer ta variable intermédiaire avec N3 et dire quel nombre est le plus grand...
la structure dont tu parles est aussi appelé switch/case (ou autre selon les langages) qui joue exactement le même role qu'un "SI....ALORS... SINON SI... ALORS....." mais qui est plus pratique et surtout plus lisible quand il ya beaucoup de choix, pour éviter de faire des SINON SI... SINON SI... à n'en plus finir...
si tu ne connais pas encore les tableau alors attends de les étudier avant de les utiliser, pour information, c'est une variable qui peut contenir plusieurs valeurs dans ses "cases". par exemple la case 1 d'une variable "tablo" peut contenir la valeur 7, tandis que la case 2 de la variable "tablo" peut contenir la valeur 18.
Ton exemple est tres bien, il te manque plus qu'à rajouter la troisième variable lue (N3) et il va te falloir une variable intermédiaire pour mieux t'y retrouver.
Ce que tu veux faire lorsque tu auras comparé N1 et N2 n'est plus de dire qu'un des deux est plus grand, mais de récupérer la valeur du plus grand des deux pour pouvoir la comparer à N3. c'est ici que tu vas utiliser ta variable intermédiaire, pour récupérer la plus grande valeur de N1 et N2.
Il ne te restera plus ainsi qu'à comparer ta variable intermédiaire avec N3 et dire quel nombre est le plus grand...
bjour
- Messages postés
- 6060
- Date d'inscription
- lundi 11 janvier 2010
- Statut
- Contributeur
- Dernière intervention
- 31 janvier 2020
Si tu nous précisais le langage à utiliser?
poukkid
- Messages postés
- 106
- Date d'inscription
- mercredi 20 mai 2009
- Statut
- Membre
- Dernière intervention
- 11 avril 2012
On parle d'algorithme (pseudo-code) il n'est pas nécessaire d'avoir un langage spécifique, de plus, pour un débutant c'est normal bien plus efficace de commencer par l'algorithmique que directement par un langage précis....
anas212
- Messages postés
- 32
- Date d'inscription
- jeudi 30 décembre 2010
- Statut
- Membre
- Dernière intervention
- 8 mars 2011
Bonjour,
Ce qu'a dit poukkid est vrai, j'apprend actuellement la base de l'algorithmique sans procéder à des langages spécifiques.En tant que débutant quel langage débuter avec?
MERCI
Ce qu'a dit poukkid est vrai, j'apprend actuellement la base de l'algorithmique sans procéder à des langages spécifiques.En tant que débutant quel langage débuter avec?
MERCI
==> Si N1>N2 mais que N1<N3, dans ton algo, N1 est le max alors qu'en réalité c'est N3.
Pour correction au besoin, l'algo doit être écrit comme ça :
Merci pour la solution.C'était facile et il fallait juste un peu de concentration.
Merci à tous pour votre précieuse aide.