Aufgabe: Minimum ermitteln?
Hallo Leute, könnt ihr mal kurz kontrollieren ob ich die folgende Aufgabe richtig gemacht habe?
/*
Aufgabe 1: Minimum ermitteln
Gegeben sind drei String Variablen mit beliebigen ganzzahligen Werten (als Strings!), z.B. "23", "5","13".
Wandeln Sie die Strings in Integer-Werte um und ermitteln Sie das Minimum und Maximum der drei Zahlen.
Geben Sie die drei Zahlen und das Minimum/Maximum auf der Konsole aus.
Das Minimum von 23, 5 und 13 ist 5.
Das Maximum von 23, 5 und 13 ist 23.
*/
String zahl1 = "23";
String zahl2 = "5";
String zahl3 = "13";
boolean minimum = Integer.parseInt(zahl2) < Integer.parseInt(zahl1) && Integer.parseInt(zahl2) < Integer.parseInt(zahl3);
System.out.println(minimum);
boolean maximum = Integer.parseInt(zahl1) > Integer.parseInt(zahl2) && Integer.parseInt(zahl1) > Integer.parseInt(zahl3);
System.out.println(maximum);
//true
//true
2 Antworten
Klingt für mich nicht als ob deine Umsetzung der Aufgabenstellung entspricht.
ermitteln Sie das Minimum und Maximum der drei Zahlen.
Das klingt für mich als ob du bei beliebigen 3 Zahlen eine Ausgabe i.d.F. "Das Minimum ist X" bzw. "Das Maximum ist Y"
bzw. wie da steht :
Das Minimum von 23, 5 und 13 ist 5.
Mit fixen zahlen und Fixen Vergleichen ein true oder False raus zu hauen ist ja nicht wirklich ermitteln welche Min und Max sind.
Du berücksichstigst nicht das 2 Zahlen gleich sein können und prüfst nur ob 2 das minimum ist oder ob 3 das max ist.
Was machst du wenn du 5,5,1 bekommst?
Wenn du fix 3 Zahlen hast kannst du erst z1 und z2 vergleichen und dann den kleineren Wert in vmin und den größeren in vmax schreiben. Und das dann nur noch mit z3 vergleichen z.b. (Pseudocode)
wenn z1<=z2
vmin = z1, vmax = z2
sonst
vmin = z2 , vmax = z1
ende
Wenn vmin > z3
vmin = z3
Wenn vmax < z3
vmax = z3
Nichts für ungut, aber das ist hier sicher die falsche Plattform für derart komplizierte Aufgaben!
Die Logik die ich geschrieben ist auf jeden Fall nicht dynamisch. Danke für deine Antwort :)