I am pretty new to c++ and im having an issue trying to get my program out of a loop when a string is entered for the variables cont, and answer. In python it is pretty easy to do simple checks but I am not sure what I should be doing in cpp. I tried doing a check using if(typeid(answer)) == typeid(string)) but this doesnt work. I havent tried putting a check for
'y'||'Y'||'n'||'N' for cont but im assuming it would be something like that? just check for those 4 characters?
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <string>
using namespace std;
int main() {
    unsigned seed;
    char cont = 'y';
    int answer = 0;
    seed = time(nullptr);
    srand(seed);
    rand() % 100 + 1;
    cout << "Lets play a math game!\n";
     while(cont == 'y')
    {
        int num1 = rand() % 100 + 1;
        int num2 = rand() % 100 + 1;
        cout << "What is the result of this addition? \n " << num1 << '\n' << "+" << num2 << endl;
        cin >> answer;
        if (typeid(answer)==typeid(string))
        {
            while(typeid(answer) == typeid(string))
            {
                cout << "Please enter an integer!" << endl;
                cin >> answer;
            }
        }
        else if (typeid(answer) == typeid(int)) {
            if (answer == (num1 + num2)) {
                cout << "You are correct, would you like to play again?" << endl;
                cin >> cont;
            } else {
                cout << "You were incorrect, would you like to try again? enter y/n" << endl;
                cin >> cont;
            }
        } else {
            answer = 0;
            cout << "You did not enter an integer!\n" << endl;
            cout << "Would you like to try again?" << endl;
        }
    }
    return 0;
}