Java :: Aufgabe #7 :: Lösung #6

7 Lösungen Lösungen öffentlich
#7

Quiz erstellen (switch-case Anweisung)

Anfänger - Java von Jurom - 22.10.2012 um 13:14 Uhr
Das Programm soll 5 Fragen bereitstellen und die Korrektheit der (Multiple-Choice) Antworten überprüfen.
Benutzen sie zum Entwerfen der Antworten eine switch-case Anweisung.
Die Fragen sollen nacheinander auf dem Bildschirm erscheinen,
bei Falschantwort wird das Quiz vorzeitig beendet.

Beispiele zum Lösungslayout sind beigefügt.
#6
vote_ok
von Flocke (180 Punkte) - 20.10.2020 um 10:57 Uhr
Quellcode ausblenden Java-Code
public class QuizSwitchCase {
	
    public static void main(String[] args) {
    	Programm Programm = new Programm();    	
    	Programm.Start();	}
}

Quellcode ausblenden Java-Code
class Programm {
	
	protected void Start() {
		int fortschritt=1;
		Fragestellung Fragestellung = new Fragestellung();
		
		do {
			switch(fortschritt) {        
			case 1:
				fortschritt=Fragestellung.StelleFrage(fortschritt);
	            break;
	        case 2:
	        	System.out.println("Richtig! Es geht weiter mit der nächsten Frage: \n\n\n");
	        	fortschritt=Fragestellung.StelleFrage(fortschritt);
	        	break;
	    	case 3:
	    		System.out.println("Richtig! Es geht weiter mit der nächsten Frage: \n\n\n");
	    		fortschritt=Fragestellung.StelleFrage(fortschritt);
	    		break;
			case 4:
				System.out.println("Richtig! Es geht weiter mit der nächsten Frage: \n\n\n");
				fortschritt=Fragestellung.StelleFrage(fortschritt);
				break;
			case 5:
				fortschritt=Fragestellung.StelleFrage(fortschritt);
				}
		} while (fortschritt < 6 && fortschritt != 0);
		System.out.print("Das Quiz ist nun Vorbei!");
	}
}

Quellcode ausblenden Java-Code
class Fragestellung {

	protected int StelleFrage(int fortschritt) {
		Benutzerauswertung Benutzerauswertung = new Benutzerauswertung();
    	String frage="";
    	int lösung=0;
    	
    	frage = this.NächsteFrage(fortschritt);
    	lösung = this.NächsteLösung(fortschritt);
    	
    	System.out.println("Frage "+fortschritt+": \n" +
    			frage+"\n" +
                "1. JA \n" +
                "2. NEIN");
    	fortschritt = Benutzerauswertung.BewerteEingabe(fortschritt, lösung);
    	return fortschritt; }
	
	private String NächsteFrage (int fortschritt) {
		String frage="";
		
    	switch(fortschritt) {
    	case 1:
    		frage="Ist Java oop?";
    		break;
    	case 2:
    		frage="Ist Java schwer zu lernen?";
    		break;
	    case 3:
			frage="Ist Java eine Insel?";
			break;
		case 4:
			frage="Ist Java eine Programmiersprache?";
			break;
		case 5:
			frage="Ist das Quit jetzt fertig?";
			break;					
    	} return frage;	}
    
    private int NächsteLösung (int fortschritt) {
    	int lösung=0;
    	
    	switch(fortschritt) {
    	case 1:
    		lösung=1;
    		break;
    	case 2:
    		lösung=2;
    		break;
    	case 3:
    		lösung=2;
    		break;
    	case 4:
    		lösung=1;
    		break;
    	case 5:
    		lösung=1;
    		break;
    	} return lösung;	}
}

Quellcode ausblenden Java-Code
import java.util.Scanner;

public class Benutzerauswertung {
	static Scanner sc = new Scanner(System.in);
	protected int BewerteEingabe(int fortschritt, int lösung) {
		if(sc.nextInt() == lösung) {
			fortschritt++;
        } else {
        	System.out.println("Schade, das war die falsche Antwort!");
        	fortschritt=0;
        }		
		return fortschritt;	}
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben