#include using namespace std; int main() { int max = 100; int value; int keepreading; keepreading = 1; do { cout << "Enter a positive integer (<= " << max << ") : "; cin >> value; if (cin.fail()) { // check for failure cerr << "Invalid character. Try Again." << endl; cin.clear(); cin.ignore(2000, '\n'); } else if (value <= 0 || value > max) { cerr << value << " is outside the range [1," << max << ']' << endl; cerr << "Invalid input. Try Again." << endl; cin.ignore(2000, '\n'); } else if (char(cin.get()) != '\n') { cerr << "Trailing characters. Try Again." << endl; cin.ignore(2000, '\n'); } else keepreading = 0; } while(keepreading == 1); return value; }