Java : condition avec plusieurs "sinon"

Résolu/Fermé
MDLuffy94 Messages postés 159 Date d'inscription mardi 17 avril 2012 Statut Membre Dernière intervention 6 mars 2019 - Modifié par MDLuffy94 le 18/02/2013 à 14:17
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 23 févr. 2013 à 23:48
Bonjour,

J'ai un petit souci au niveau des condition, l'exercice étant de mettre les chiffre introduit dans l'ordre croissant, j'ai pu écrire tout le code mais je n'arrive pas a poser mes condition "sinon". j'aimerai trouver le problème mais je ne sais pas par ou commencer

le code :

import java.util.Scanner;


public class data {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int a,b,c;
System.out.println("Veuillez introduire vos 3 nombres :");
a = sc.nextInt();
b = sc.nextInt();
c = sc.nextInt();
if (a<b && b<c)
{
System.out.println(a+", "+b+", "+c);
}
elseif (b<c && c<a);
{
System.out.println(b+", "+c+", "+a);
}
elseif (c<a && a<b);
{
System.out.println(c+", "+a+", "+b);
}
elseif (a<c && c<b);
{
System.out.println(a+", "+c+", "+b);
}
elseif (b<a && a<c);
{
System.out.println(b+", "+a+", "+c);
}
elseif (c<b && b<a);
{
System.out.println(c+", "+b+", "+a);
}
}

private static void elseif(boolean b) {
// TODO Auto-generated method stub

}
}

Quand j'execute il me donne ceci :

Veuillez introduire vos 3 nombres :
1
2
3
1, 2, 3
2, 3, 1
3, 1, 2
1, 3, 2
2, 1, 3
3, 2, 1


Merci
A voir également:

2 réponses

ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 566
18 févr. 2013 à 14:21
Bonjour, pourquoi ne pas placer par un tableau et ensuite faire un tri sur celui ci ?
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 020
18 févr. 2013 à 16:12
Ta méthode elseif (qui ne fait rien !) ne pourra jamais remplacer les instructions else et if qu'il faudrait mettre ici !

if (a<b && b<c)
{
	System.out.println(a+", "+b+", "+c);
}
else if (b<c && c<a)
{
	System.out.println(b+", "+c+", "+a);
} 
else if (c<a && a<b)
{
	System.out.println(c+", "+a+", "+b);
}
else if (a<c && c<b)
{
	System.out.println(a+", "+c+", "+b);
}
else if (b<a && a<c)
{
	System.out.println(b+", "+a+", "+c);
}
else if (c<b && b<a)
{
	System.out.println(c+", "+b+", "+a);
}

Remarque :
1) tu ne gères pas le cas où il y a des égalités !
2) ton code peut se simplifier en imbriquant les if les un dans les autres

if (a<b)
{
	if (b<c)
	{
		System.out.println(a+", "+b+", "+c);
	}
	else // b>=c
	{
		...
	}
}
else // a>=b
{
	// ...
}
0
MDLuffy94 Messages postés 159 Date d'inscription mardi 17 avril 2012 Statut Membre Dernière intervention 6 mars 2019 22
23 févr. 2013 à 23:06
Ok merci, j'ai reussi. Mais la methode du tableau ma l'air pas mal aussi (un ami la fais mais ne me la pas expliquer, trop "occuper") c'est plus rapide a "coder"??
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 020
23 févr. 2013 à 23:48
La méthode du tableau est surtout très générale, car elle fonctionnera de la même façon pour 2, 3, 4, ... ou 100000 valeurs !
0