Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
In der Ausgabe wird ohne Eingabe in den else Block gesprungen.
Hallo, da bin ich wieder. Ganz nebensächlich bitte nicht auf die Fragen achten, ist nur zum üben 😄
Mein Problem ist, dass bei der 3. Frage direkt in den Else block übergegangen wird.
In der Ausgabe kommt dann "Gebe hier deine Antwort ein: Falsch. Die Antwort ist Ja!" obwohl ich nichts eingebe.
Java:
import java.util.Scanner;
public class Main {
static int punktzahl = 0;
static String antwort1 = "2. Platz";
static String antwort3 = "Ja";
public static void main(String[] args) {
try(Scanner scan = new Scanner(System.in)){
System.out.println("Du läufst ein Marathon und überholst den 2. Platz, auf welchem Platz bist du dann?");
System.out.print("Gebe hier deine Antwort ein: ");
String eins = scan.nextLine();
frage1(eins);
System.out.println("Berlin schreibt man am Anfang mit B und hinten mit h. Stimmt das?");
System.out.print("Gebe hier deine Antwort ein: ");
String drei = scan.nextLine();
frage3(drei);
}
}
public static void frage1(String eins) {
if(eins.equals(antwort1)) { punktzahl++; System.out.println("Richtig! Du hast " + punktzahl + " Punkt.");
} else { System.out.println("Falsch. Die Antwort ist der 2. Platz!");
} }
public static void frage3(String drei) {
if(drei.equals(antwort3)) { punktzahl++; System.out.println("Richtig! Du hast " + punktzahl + " Punkte.");
} else { System.out.println("Falsch. Die Antwort ist Ja!");
} }
}
Hallo, da bin ich wieder. Ganz nebensächlich bitte nicht auf die Fragen achten, ist nur zum üben 😄
Mein Problem ist, dass bei der 3. Frage direkt in den Else block übergegangen wird.
In der Ausgabe kommt dann "Gebe hier deine Antwort ein: Falsch. Die Antwort ist Ja!" obwohl ich nichts eingebe.
Java:
import java.util.Scanner;
public class Main {
static int punktzahl = 0;
static String antwort1 = "2. Platz";
static String antwort3 = "Ja";
public static void main(String[] args) {
try(Scanner scan = new Scanner(System.in)){
System.out.println("Du läufst ein Marathon und überholst den 2. Platz, auf welchem Platz bist du dann?");
System.out.print("Gebe hier deine Antwort ein: ");
String eins = scan.nextLine();
frage1(eins);
System.out.println("Berlin schreibt man am Anfang mit B und hinten mit h. Stimmt das?");
System.out.print("Gebe hier deine Antwort ein: ");
String drei = scan.nextLine();
frage3(drei);
}
}
public static void frage1(String eins) {
if(eins.equals(antwort1)) { punktzahl++; System.out.println("Richtig! Du hast " + punktzahl + " Punkt.");
} else { System.out.println("Falsch. Die Antwort ist der 2. Platz!");
} }
public static void frage3(String drei) {
if(drei.equals(antwort3)) { punktzahl++; System.out.println("Richtig! Du hast " + punktzahl + " Punkte.");
} else { System.out.println("Falsch. Die Antwort ist Ja!");
} }
}
Moment mal. Ich habe, damit der Beitrag nicht so lang wird Frage 2 rausgenommen. Habe den Code hier vom Beitrag dann mal in Eclipse eingefügt und auf einmal funktioniert es ... Ich poste jetzt lieber den ganzen Code. Bin echt verwirrt..
Vielen Dank! Hat funktioniert.
Verstehen tu ich es aber nicht ganz. Ich dachte, weil man da nur Zahlen eingeben kann, scannt man auch nur Integer.
Sollte man nach einem scan.nextInt immer einen scan.nextLine schreiben oder gibt es da eine Voraussetzung?