Schrijf een programma waarin je gequizzed wordt op je kennis van de Indiase keuken en de bijbehorende gerechten. De data voor deze opdracht kan je hier downloaden.
Zodra de data uit het bestand indian_food.csv
is ingeladen, maakt de computer van een willkeurig gekozen gerecht een quiz vraag. De vraag gaat over welke gang een bepaald gerecht is. De enige mogelijke antwoorden zijn:
Voor elk goed beantwoordde vraag krijgt de gebruiker een punt en gaat deze door naar de volgende vraag. Zodra de gebruiker een verkeerd antwoord geeft, zal het programma worden afgesloten. Er is geen maximum aan het aantal vragen dat een gebruiker kan krijgen. Ook maken we ons in deze versie geen zorgen of we bepaalde vragen al een keer gehad hebben.
Om dit te bouwen moet je een eigen klasse FoodQuiz
implementeren. Deze klasse stelt de vraag op en houdt bij in welke ronde een speler is en hoeveel punten deze tot nu toe bij elkaar heeft gespeeld. Implementeer hiervoor minimaal de volgende methoden:
getQuestionText()
dat de tekst van de huidige vraag oplevertgetScore()
dat de huidige score van de speler oplevertgetAnswer()
waarmee je het antwoord kan tonen (als de gebruiker het fout had)getAnswerOptions()
waarmee je alle antwoordmogelijkheden kan ophalen (zie bovenstaande lijstje)checkAnswer(String answerText)
waarmee je kan controleren of het gegeven antwoord goed is.nextQuestion()
waarmee de FoodQuiz
de volgende vraag genereert.Begin met het nadenken over welke klassen je naast FoodQuiz
nog meer kan gebruiken.
Voeg gerust functies aan het spel toe die je interessant lijken!
Hints:
static
methoden voor het inlezen van de data.FoodQuiz
instantie altijd geldig blijft. (Vraag je bijvoorbeeld eens af waarom wij er voor kiezen om getAnswer()
en checkAnswer(..)
te splitsen.)********** Question 1: **********
Dish name: Navrattan korma
Ingredients: Green beans, potatoes, khus khus, low fat, garam masala powder
What type of dish is described above?
1. main course
2. dessert
3. starter
4. snack
Please enter the number of your answer: 1
Correct! SCORE: 1.
********** Question 2: **********
Dish name: Shrikhand
Ingredients: Curd, sugar, saffron, cardamom
What type of dish is described above?
1. main course
2. dessert
3. starter
4. snack
Please enter a value: 2
Correct! SCORE: 2.
********** Question 3: **********
Dish name: Sambar
Ingredients: Pigeon peas, eggplant, drumsticks, sambar powder, tamarind
What type of dish is described above?
1. main course
2. dessert
3. starter
4. snack
Please enter a value: 3
That's WRONG! It was a main course. GAME OVER.
Process finished with exit code 0