Question: please do it in JAVA //---------------------------------------------------------------------- // TriviaConsole.java by Dale/Joyce/Weems Chapter 2 // // Allows the user to play a trivia game. // Uses a

 please do it in JAVA //---------------------------------------------------------------------- // TriviaConsole.java by Dale/Joyce/Weems Chapter

please do it in JAVA

//---------------------------------------------------------------------- // TriviaConsole.java by Dale/Joyce/Weems Chapter 2 // // Allows the user to play a trivia game. // Uses a Console interface. //----------------------------------------------------------------------

import java.io.*; import java.util.Scanner;

public class TriviaConsole { public static void main(String[] args) throws IOException { Scanner conIn = new Scanner(System.in); TriviaGame game; // the trivia game int questNum; // current question number TriviaQuestion tq; // current question String answer; // answer provided by user

// Initialze the game game = GetTriviaGame.useTextFile("game.txt"); // Greet the user. System.out.println("Welcome to the " + game.getQuizName() + " trivia quiz."); System.out.print("You will have " + game.getNumChances() + " chances "); System.out.println("to answer " + game.getCurrNumQuestions() + " questions. ");

questNum = 0; while (!game.isOver()) { // Get number of next unanswered question. do if (questNum == game.getCurrNumQuestions()) questNum = 1; else questNum = questNum + 1; while (game.isAnswered(questNum)); // Ask question and handle user's response. tq = game.getTriviaQuestion(questNum); System.out.println(tq.getCategory() + ": " + tq.getQuestion()); answer = conIn.nextLine(); if (tq.tryAnswer(answer)) { System.out.println("Correct! "); game.correctAnswer(questNum); } else { System.out.println("Incorrect "); game.incorrectAnswer(); } } System.out.println(" Game Over"); System.out.println(" Results:"); System.out.print(" Chances used: " + (game.getNumChances() - game.getRemainingChances())); System.out.println(" Number Correct: " + game.getNumCorrect()); System.out.println(" Thank you. "); } }

........................

//---------------------------------------------------------------------------- // TriviaGame.java by Dale/Joyce/Weems Chapter 2 // // Provides trivia game objects. //----------------------------------------------------------------------------

public class TriviaGame { private String quizName; private int maxNumQuestions; private int numChances; private int remainingChances; private int numCorrect = 0; private int numIncorrect = 0; private TriviaQuestion[] questions; // the set of questions private boolean[] correct; // true if corresponding question answered private int currNumQuestions = 0; // current number of questions

public TriviaGame(String quizName, int maxNumQuestions, int numChances) // Precondition: maxNumQuestions > 0 and numChances > 0 { this.quizName = quizName; this.maxNumQuestions = maxNumQuestions; this.numChances = numChances; remainingChances = numChances; questions = new TriviaQuestion[maxNumQuestions]; correct = new boolean[maxNumQuestions]; }

public String getQuizName() { return quizName; }

public int getNumChances() { return numChances; }

public int getRemainingChances() { return remainingChances; }

public int getNumCorrect() { return numCorrect; }

public int getNumIncorrect() { return numIncorrect; }

public int getCurrNumQuestions() { return currNumQuestions; } public TriviaQuestion getTriviaQuestion(int questionNumber) // Precondition: 0

public boolean isAnswered(int questionNumber) // Precondition: 0

// Returns true if this game is over, false otherwise. { return (numCorrect == currNumQuestions) || (remainingChances

public void insertQuestion(TriviaQuestion question)

// Precondition: currNumQuestions

public void incorrectAnswer() // Updates game status to indicate that a question // was answered incorrectly { numIncorrect = numIncorrect + 1; remainingChances = remainingChances - 1; } }

.........................

//---------------------------------------------------------------------------- // TriviaQuestion.java by Dale/Joyce/Weems Chapter 2 // // Provides trivia question objects. //----------------------------------------------------------------------------

//import ch02.stringLogs.*;

public class TriviaQuestion { private String category; // category of question private String question; // the question private StringLogInterface answers; // acceptable answers

public TriviaQuestion(String category, String question, int maxNumAnswers)

// Precondition: maxNumAnswers > 0 { this.category = category; this.question = question; answers = new ArrayStringLog("trivia", maxNumAnswers); }

public String getCategory() { return category; } public String getQuestion() { return question; }

public boolean tryAnswer(String answer) { return answers.contains(answer); }

public void storeAnswer(String answer) // Precondition: answers String Log is not full { answers.insert(answer); } }

Change our trivia game playing system so that it keeps track, and reports to the user in an appropriate fashion, how many times the user attempts to answer each of the various questions

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!