1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195
|
#include <iostream>
#include <fstream>
#include <iomanip>
#include <string>
using namespace std;
bool addition(int firstNum, int secondNum, int userAnswer, int correctAnswer)
{
firstNum = rand() % 20 + 1;
secondNum = rand() % 20 + 1;
correctAnswer = firstNum + secondNum;
cout << "Type in the answer to the problem and press enter" << endl;
cout << "***********************************************************" << endl;
cout << "************************Addition***************************" << endl;
cout << "***********************************************************" << endl;
cout << "** "<< firstNum <<" **" << endl;
cout << "** + " <<secondNum <<" **" << endl;
cout << "** _________ **" << endl;
cout << "** **" << endl;
cout << "***********************************************************" << endl;
cout << "***********************************************************" << endl;
cin >> userAnswer;
if (userAnswer == correctAnswer)
{
cout << "Congratulations..You are Correct" << endl;
}
else if (userAnswer != correctAnswer)
{
cout << "Incorrect..The correct answer is... " << correctAnswer << endl;
}
return 0;
}
bool multiplication(int firstNum, int secondNum, int userAnswer, int correctAnswer)
{
firstNum = rand() % 20 + 1;
secondNum = rand() % 20 + 1;
correctAnswer = firstNum * secondNum;
cout << "Type in the answer to the problem and press enter" << endl;
cout << "***********************************************************" << endl;
cout << "********************Multiplication*************************" << endl;
cout << "***********************************************************" << endl;
cout << "** "<< firstNum << " **" << endl;
cout << "** x "<< secondNum <<" **" << endl;
cout << "** _________ **" << endl;
cout << "** **" << endl;
cout << "***********************************************************" << endl;
cout << "***********************************************************" << endl;
cin >> userAnswer;
if (userAnswer == correctAnswer)
{
cout << "Congratulations..You are Correct" << endl;
}
else if (userAnswer != correctAnswer)
{
cout << "Incorrect..The correct answer is... " << correctAnswer << endl;
}
return 0;
}
bool subtraction(int firstNum, int secondNum, int userAnswer, int correctAnswer)
{
firstNum = rand() % 20 + 1;
secondNum = rand() % 20 + 1;
correctAnswer = firstNum - secondNum;
cout << "Type in the answer to the problem and press enter" << endl;
cout << "***********************************************************" << endl;
cout << "***********************Subtraction*************************" << endl;
cout << "***********************************************************" << endl;
cout << "** "<< firstNum <<" **" << endl;
cout << "** - "<< secondNum <<" **" << endl;
cout << "** _________ **" << endl;
cout << "** **" << endl;
cout << "***********************************************************" << endl;
cout << "***********************************************************" << endl;
cin >> userAnswer;
if (userAnswer == correctAnswer)
{
cout << "Congratulations..You are Correct" << endl;
}
else if (userAnswer != correctAnswer)
{
cout << "Incorrect..The correct answer is... " << correctAnswer << endl; //output the correct answer
}
return 0; //return values
}
bool division(int firstNum, int secondNum, int userAnswer, int correctAnswer) //division function
{
firstNum = rand() % 20 + 1; //first number random between 1 and 20
secondNum = rand() % 20 + 1; //second number random between 1 and 20
do{
if (secondNum = 0) //if the divisor is 0,
{
secondNum = rand() % 20 + 1; //generate another random number,
}
}while (secondNum = 0); //until it is no longer 0
correctAnswer = firstNum / secondNum; //correct answer is first number divided by the second
cout << "Type in the answer to the problem and press enter" << endl; //instructions
cout << "***********************************************************" << endl;
cout << "************************Division***************************" << endl;
cout << "***********************************************************" << endl;
cout << "** "<< firstNum <<" **" << endl; //displays first number
cout << "** % **" << endl;
cout << "** "<< secondNum <<" **" << endl; //displays second number
cout << "** **" << endl;
cout << "***********************************************************" << endl;
cout << "***********************************************************" << endl;
cin >> userAnswer; //input user answer
if (userAnswer == correctAnswer) //if the answer input by the user is correct,
{
cout << "Congratulations..You are Correct" << endl; //output correct
}
else if (userAnswer != correctAnswer) //if the answer is incorrect,
{
cout << "Incorrect..The correct answer is... " << correctAnswer << endl; //output the correct answer
}
return 0; //return values
}
int main(char continueOrNot)
{
do{char problemType = '\0'; //declares problem type for the user to decide what mathematical function to use
continueOrNot = '\0';
int firstNum; //declares first number for each problem
int secondNum; //declares second number for each problem
int userAnswer; //declares answer the user inputs
int correctAnswer; //declares correct answer for each problem
firstNum = 0; //to begin, set all equal to 0
secondNum = 0;
userAnswer = 0;
correctAnswer = 0;
cout << "Enter A for an addition problem" << endl; //instructions on how to choose the mathematical function
cout << "Enter S for a subtraction problem" << endl;
cout << "Enter M for a multiplication problem" << endl;
cout << "Enter D for a division problem " << endl;
cout << "Enter E to exit the program" << endl;
cin >> problemType; //input type of problem
if (problemType == 'A') //if the problem type is A,
{
addition(firstNum, secondNum, userAnswer, correctAnswer); //call the addition function
}
if (problemType == 'M') //if the problem type is M,
{
multiplication(firstNum, secondNum, userAnswer, correctAnswer); //call multiplication function
}
if (problemType = 'S') //if the problem type is S,
{
subtraction(firstNum, secondNum, userAnswer, correctAnswer); //call subtraction function
}
if (problemType == 'D') //if the problem type is D,
{
division(firstNum, secondNum, userAnswer, correctAnswer); //call the division function
}
if (problemType == 'E') //if the problem type is E,
{
exit(0); //exit the program
}
cout << "Enter C for another problem" << endl; //enter C to continue to another problem
cout << "Enter E to exit the program" << endl;
cin >> continueOrNot;
}while (continueOrNot == 'C');
if (continueOrNot == 'E')
{
exit(0);
}
}
|