Hi Leute, möchte aus Spaß an der Übung einfach mal ein kleines Quiz erstellen, um so bisschen vertrauter mit dem Coden zu werden. Bin noch ein Anfänger und erst im 2. Semester meines Wirtschaftsinformatik-Studiums.
Also anfangs muss der User die Taste 1 drücken um zu spielen. Tut er das nicht wird das Programm abgebrochen. Jede einzelne Frage habe ich in eine Methode geschrieben, wo die Eingabe des Users (A, B oder C) durch Switch-Case geprüft wird und anschließend ein boolean Wert an die Methode "Punktzahl" übergeben wird. Dort wird (falls true) auf den Int-Wert "Punktzahl" immer 1 addiert. Am Ende gibt die Methode Punktzahl den Int Wert an die Main zurück.
So ist das zumindest geplant, jedoch funktioniert das mit der Punktzahl nicht ganz. Wäre nett wenn sich jemand den Code mal ansieht und mir Tipps gibt oder die entsprechende Stelle verbessert. Freue mich auf eure Antworten!
Also anfangs muss der User die Taste 1 drücken um zu spielen. Tut er das nicht wird das Programm abgebrochen. Jede einzelne Frage habe ich in eine Methode geschrieben, wo die Eingabe des Users (A, B oder C) durch Switch-Case geprüft wird und anschließend ein boolean Wert an die Methode "Punktzahl" übergeben wird. Dort wird (falls true) auf den Int-Wert "Punktzahl" immer 1 addiert. Am Ende gibt die Methode Punktzahl den Int Wert an die Main zurück.
So ist das zumindest geplant, jedoch funktioniert das mit der Punktzahl nicht ganz. Wäre nett wenn sich jemand den Code mal ansieht und mir Tipps gibt oder die entsprechende Stelle verbessert. Freue mich auf eure Antworten!
Java:
import java.util.Scanner;
public class Quiz {
public static void main(String[] args) {
System.out
.println("Herzlich Willkommen zum Quiz! Sie bekommen Fragen gestellt, "
+ "bei denen es 3 mögliche Antworten gibt, für jede richtige Antwort gibt es einen Punkt. Zum Spielen 1 drücken, viel Spaß!");
Scanner s = new Scanner(System.in);
int Eingabe = s.nextInt();
if (Eingabe == 1) {
Frage1();
Frage2();
Frage3();
System.out.println("Punktzahl: " + Punktzahl());
} else {
System.out.println("Falsche Eingabe! Neu starten!");
}
}
public static void Frage1() {
System.out.println("Wie heißt die Hauptstadt Spaniens?");
System.out.println("A: Berlin \t" + "B: Paris \t" + "C: Madrid");
boolean RichtigFalsch;
Scanner s = new Scanner(System.in);
String Antwort = s.next();
switch (Antwort) {
case "A":
System.out.println("Falsch!");
RichtigFalsch = false;
Punktzahl(RichtigFalsch);
break;
case "B":
System.out.println("Falsch!");
RichtigFalsch = false;
Punktzahl(RichtigFalsch);
break;
case "C":
System.out.println("Richtig!");
RichtigFalsch = true;
Punktzahl(RichtigFalsch);
break;
}
}
public static void Frage2() {
System.out.println("Wie heißt die Hauptstadt Mexikos?");
System.out.println("A: Moskau \t" + "B: Belgrad \t" + "C: Mexiko-Stadt");
boolean RichtigFalsch;
Scanner s = new Scanner(System.in);
String Antwort = s.next();
switch (Antwort) {
case "C":
System.out.println("Falsch!");
RichtigFalsch = false;
Punktzahl(RichtigFalsch);
break;
case "A":
System.out.println("Falsch!");
RichtigFalsch = false;
Punktzahl(RichtigFalsch);
break;
case "B":
System.out.println("Richtig!");
RichtigFalsch = true;
Punktzahl(RichtigFalsch);
break;
}
}
public static void Frage3() {
System.out.println("Wie heißt die Hauptstadt der USA?");
System.out.println("A: Casablanca \t" + "B: Washington \t" + "C: New York");
boolean RichtigFalsch;
Scanner s = new Scanner(System.in);
String Antwort = s.next();
switch (Antwort) {
case "C":
System.out.println("Falsch!");
RichtigFalsch = false;
Punktzahl(RichtigFalsch);
break;
case "B":
System.out.println("Falsch!");
RichtigFalsch = false;
Punktzahl(RichtigFalsch);
break;
case "A":
System.out.println("Richtig!");
RichtigFalsch = true;
Punktzahl(RichtigFalsch);
break;
}
}
public static int Punktzahl(boolean RichtigFalsch) {
int Punktzahl = 0;
if (RichtigFalsch == true) {
Punktzahl = Punktzahl+1;
}
return Punktzahl;
}
}