Java : condition avec plusieurs "sinon"

Résolu
MDLuffy94 Messages postés 159 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
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 8411 Date d'inscription   Statut Contributeur Dernière intervention   1 566
 
Bonjour, pourquoi ne pas placer par un tableau et ensuite faire un tri sur celui ci ?
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
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   Statut Membre Dernière intervention   22
 
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 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
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