int-Wertevergleich mit if-else-Verzweigung

Pillepalle

Mitglied
Hallo,

kann mir jemand sagen, wie man mit if-else-Verzweigungen 3 int Werte vergleichen kann?
Man soll den kleinsten herausfinden und ausgeben und dabei aber auch berücksichtigen, dass werte gleich groß sein können. Ist das so aufwendig wie ich vermute?

Viele Grüße
pillepalle
 
Also wenn das schon aufwendig ist...
Java:
	public static void main(String[] args)
	{
		max(1, 2, 3); // beliebig ändern
	}

	private static void max(int a, int b, int c)
	{
		if(a == b) {
			if(b == c) {
				System.out.println("Alle Werte sind gleich");
			} else {
				System.out.println("a und b sind gleich c ist " + ((c > b)? "grösser" : "kleiner"));
			}
		} else if(a == c) {
			System.out.println("a und c sind gleich b ist " + ((b > c)? "grösser" : "kleiner"));
		} else if(b == c) {
			System.out.println("b und c sind gleich a ist " + ((a > c)? "grösser" : "kleiner"));
		} else {
			int max = Math.max(a, Math.max(b, c));
			int min = Math.min(a, Math.min(b, c));
			if(max == a) {
				System.out.println("a ist am höchsten, gefolgt von "
						+ ((min == b)? "c" : "b") + ", gefolgt von "
						+ ((min == b)? "b" : "c"));
			} else if(max == b) {
				System.out.println("b ist am höchsten, gefolgt von "
						+ ((min == a)? "c" : "a") + ", gefolgt von "
						+ ((min == a)? "a" : "c"));
			} else {
				System.out.println("c ist am höchsten, gefolgt von "
						+ ((min == b)? "a" : "b") + ", gefolgt von "
						+ ((min == b)? "b" : "a"));
			}
		}
	}
}
 

Neue Themen


Zurück
Oben