There are two parts to the programming assignment.
- Design and create a Question class according to the class specifications below. The Question class will hold data for a trivia question.
- Write a script (on a separate file) that simulates a simple trivia game for two players.
Specification for Question class:
A Question object has a question or prompt and four possible answers, but only one of the answers is
correct – so basically, we are simulating a multiple-choice question.
- A trivia question or prompt
- Possible answer 1
- Possible answer 2
- Possible answer 3.
- Possible answer 4
- The number of the correct answer (either 1, 2, 3, or 4)
Note: you could also label the possible answers with letters (e.g.: a, b, c, and d). Then the correct answer would be a value such as a, b, c, or d.
- __init__ method
- Getter methods (accessors/inspectors)
- Setter methods (mutators)
- A method that returns a string with the prompt and the possible answers. This method will be used
in a script to display the trivia questions to the players. Make sure to format the string accordingly.
Your program will simulate a simple trivia game for two players who will take turns in answering questions. Each time a player gives the correct answer to a question, the player earns a point. After all the questions have been answered, the program should display the number of points earned by each player and who the winner is, or indicate that there is a tie if that is the case.
Use the Question class to create at least 10 trivia questions on the topic of your choice. The Question objects you create must be stored in a list.
- User input must be validated and your program gracefully handle invalid inputs.
- Repetitive code (code that appears in multiple places in the main script) should be written as a
- Your program must use good style, including proper identifier names, useful comments, and proper
use of indentation and whitespace.
- You program should also have an appropriate user interface so that anyone one using the program
knows what to do and what to expect.