ist der Code jetzt gut? mir bleibt trotzdem Rätsel, warum in der do reingekommen ist, nachdem die zahl erraten wurde
public class ZahlenRaten {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int unteregrenze, oberegrenze, zufall, eingabe, zaeler = 0;
unteregrenze = sc.nextInt();
oberegrenze = sc.nextInt();
zufall = (int) (Math.random() * (oberegrenze - unteregrenze) + unteregrenze);
do {
zaeler++;
System.out.println("N " + zaeler + " Geben Sie die zahl ein");
eingabe = sc.nextInt();
int mitte = (oberegrenze - unteregrenze) / 2 + unteregrenze;
if (eingabe < unteregrenze || eingabe > oberegrenze) {
System.out.println(String.format(
"Bitte geben die die Zahl zwischen %s und %s ein ", unteregrenze,
oberegrenze));
} else {
if (zufall > mitte) {
unteregrenze = mitte;
System.out.println(String.format(
"Zahl zwischen %s und %s eingeben", unteregrenze,
oberegrenze));
} else {
if (zufall < mitte) {
oberegrenze = mitte;
System.out.println(String.format(
"Zahl zwischen %s und %s eingeben",
unteregrenze, oberegrenze));
} else {
System.out.println(String.format(
"Sie haben die zahl beim %s Versuch erraten",
zaeler));
}
}
}
} while (eingabe != zufall);
}
}