public static void Main()
Question question1 = new Question("Space", "What is the nearest planet to the sun?", "Mercury");
Console.WriteLine("\n Category: " + question1.displayCategory() + "\n");
Console.WriteLine(question1.displayQuestion() );
Console.Write("Please enter your answer here: ");
string userAnswer = Console.ReadLine();
if(question1.isCorrect(userAnswer)) {
Console.WriteLine("Correct!");
Console.WriteLine("Incorrect!");
Question question2 = new MultipleChoice("History", "The ancient egyptians are famous for what kind of monument?", "A", "A. Pyramids", "B. Empire State Building", "C. Stonehenge");
Console.WriteLine("\n Category: " + question2.category + "\n");
Console.WriteLine(question2.displayQuestion());
Console.WriteLine(question2.displayChoices());
Console.Write("Please enter your answer here: ");
userAnswer = Console.ReadLine();
if(question2.isCorrect(userAnswer)) {
Console.WriteLine("Correct!");
Console.WriteLine("Incorrect!");
Question question3 = new MultipleChoice("Science", "A cell spends most of its time in:", "A", "A. interphase", "B.Mitosis", "C. Meiosis");
Console.WriteLine("\n Category: " + question3.category + "\n");
Console.WriteLine(question3.displayQuestion());
Console.WriteLine(question3.displayChoices());
Console.Write("Please enter your answer here: ");
userAnswer = Console.ReadLine();
if(question3.isCorrect(userAnswer)) {
Console.WriteLine("Correct!");
Console.WriteLine("Incorrect!");
Question question4 = new Question("History", "What was the civilization that had the legionarys?", "Romans");
Console.WriteLine("\n Category: " + question4.displayCategory() + "\n");
Console.WriteLine(question4.displayQuestion() );
Console.Write("Please enter your answer here: ");
userAnswer = Console.ReadLine();
if(question4.isCorrect(userAnswer)) {
Console.WriteLine("Correct!");
Console.WriteLine("Incorrect!");
Question question5 = new Question("Space", "What is our galaxy called?", "Milky way");
Console.WriteLine("\n Category: " + question5.displayCategory() + "\n");
Console.WriteLine(question5.displayQuestion() );
Console.Write("Please enter your answer here: ");
userAnswer = Console.ReadLine();
if(question5.isCorrect(userAnswer)) {
Console.WriteLine("Correct!");
Console.WriteLine("Incorrect!");
Question question6 = new Question("Science", "What does the cell use to store genetic information(DNA) that determines traits?", "chromosomes");
Console.WriteLine("\n Category: " + question6.displayCategory() + "\n");
Console.WriteLine(question6.displayQuestion() );
Console.Write("Please enter your answer here: ");
userAnswer = Console.ReadLine();
if(question6.isCorrect(userAnswer)) {
Console.WriteLine("Correct!");
Console.WriteLine("Incorrect!");
Question question7 = new MultipleChoice ("Space", "What moon of Juptier is the one that is most likely to hold life?", "A", "A. Europa", "B. Metis", "C. Callisto");
Console.WriteLine("\n Category: " + question7.category + "\n");
Console.WriteLine(question7.displayQuestion());
Console.WriteLine(question7.displayChoices());
Console.Write("Please enter your answer here: ");
userAnswer = Console.ReadLine();
if(question7.isCorrect(userAnswer)) {
Console.WriteLine("Correct!");
Console.WriteLine("Incorrect!");
Question question8 = new MultipleAnswer ("Science", "Which of the following is part of the Cell cycle? (select all that apply)", "A", "A. interphase", "B. Metis", "C. Callisto");
public Question(string cat, string ques, string answr) {
public string displayCategory() {
public string displayQuestion() {
public string getAnswer() {
public virtual bool isCorrect(string userAnswer) {
if(userAnswer.ToLower() == answer.ToLower()) {
public virtual string displayChoices() {
public class MultipleChoice : Question {
public MultipleChoice(string cat, string ques, string answr, string firstChoice,
string secondChoice, string thirdChoice)
: base(cat, ques, answr){
public override string displayChoices() {
public class MultipleAnswers: Question {
public MultipleAnswers(string cat, string ques, string firstchoice, string secondchoice, string thirdchoice, string fourthchoice, string answr, string answr2)
: base(cat, ques, choice){
public override bool isCorrect(string userAnswer) {
if( userAnswer.ToLower() == Answer2.ToLower() || userAnswer.ToLower() == Answer1.ToLower() ) {
public override string displayChoices() {