/* testsel3.cpp CIS 150 6/5/2008 David Klick Demonstration of if/else range checking. */ #include #include using std::cout; using std::cin; using std::fixed; using std::setprecision; using std::showpoint; void cont(); int main(void) { double DISC_PCT = 0.0; double price = 12.00; bool valid = true; // assume valid unless we get error cout << "Ticket Seller 2000\n\n" << "Tickets are $" << fixed << showpoint << setprecision(2) << price << " each.\n\n" << "Discount percentage (0 to 15): "; cin >> DISC_PCT; if (DISC_PCT < 0.0 || DISC_PCT > 15.0) { cout << "Error: invalid discount percentage\n"; valid = false; } else { price *= (1 - DISC_PCT/100.0); } if (valid) { cout << "The amount due is $" << price << '\n'; } cont(); return 0; } void cont() { if (cin.rdbuf()->sungetc() != -1 && cin.get() != '\n') cin.ignore(80,'\n'); cout << "Press enter to continue..."; cin.get(); }