Игра-викторина на C++
Опубликовано: 15 Сентября, 2022
В этой статье задача состоит в том, чтобы создать игру-викторину, в которой пользователю будут задаваться вопросы и будет показан результат каждого вопроса, является ли он правильным или неправильным с обновленным счетом.
Ниже приведена реализация того же самого:
C++
// C++ program for the above approach #include <iostream> #include <string> using namespace std; int Guess; int Total; // Question Class class Question { private : string Question_Text; string Answer_1; string Answer_2; string Answer_3; string Answer_4; int Correct_Answer; int Question_Score; public : // Setter Function void setValues(string, string, string, string, string, int , int ); // Function to ask questions void askQuestion(); }; // Driver code int main() { cout << "
THE DAILY QUIZ" << endl; cout << "
Press Enter to start " << "the quiz... " << endl; // Input cin.get(); string Name; int Age; // Input the details cout << "What is your name?" << endl; cin >> Name; cout << endl; cout << "How old are you?" << endl; cin >> Age; cout << endl; string Respond; cout << "Are you ready to take" << " the quiz " << Name << "? yes/no" << endl; cin >> Respond; if (Respond == "yes" ) { cout << endl; cout << "Good Luck!" << endl; } else { cout << "Okay Good Bye!" << endl; return 0; } // Objects of Question Class Question q1; Question q2; Question q3; Question q4; Question q5; Question q6; Question q7; Question q8; Question q9; Question q10; // 3 is the position of // correct answer q1.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q2.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q3.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q4.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q5.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q6.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q7.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q8.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q9.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q10.setValues( "Question : " , "Answer 1" , "Answer 2" , "Answer 3" , "Answer 4" , 3, 10); q1.askQuestion(); q2.askQuestion(); q3.askQuestion(); q4.askQuestion(); q5.askQuestion(); q6.askQuestion(); q7.askQuestion(); q8.askQuestion(); q9.askQuestion(); q10.askQuestion(); // Display the total score cout << "Total Score = " << Total << "out of 100" << endl; // Display the results // If the player pass the quiz if (Total >= 70) { cout << "Congrats you passed the" << " quiz!" << endl; } // Otherwise else { cout << "Alas! You failed the quiz." << endl; cout << "Better luck next time." << endl; } return 0; } // Function to set the values of // the questions void Question::setValues( string q, string a1, string a2, string a3, string a4, int ca, int pa) { Question_Text = q; Answer_1 = a1; Answer_2 = a2; Answer_3 = a3; Answer_4 = a4; Correct_Answer = ca; Question_Score = pa; } // Function to ask questions void Question::askQuestion() { cout << endl; // Print the questions cout << Question_Text << endl; cout << "1. " << Answer_1 << endl; cout << "2. " << Answer_2 << endl; cout << "3. " << Answer_3 << endl; cout << "4. " << Answer_4 << endl; cout << endl; // Display the answer cout << "What is your answer?(in number)" << endl; cin >> Guess; // If the answer is correct if (Guess == Correct_Answer) { cout << endl; cout << "Correct !" << endl; // Update the correct score Total = Total + Question_Score; cout << "Score = " << Question_Score << " out of " << Question_Score << "!" << endl; cout << endl; } // Otherwise else { cout << endl; cout << "Wrong !" << endl; cout << "Score = 0" << " out of " << Question_Score << "!" << endl; cout << "Correct answer = " << Correct_Answer << "." << endl; cout << endl; } } |
Выход: