Advertisement
Guest User

Untitled

a guest
Mar 10th, 2013
393
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.99 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <string>
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9.     string acctnum;
  10.     char servcode;
  11.     int minutes;
  12.     int overage;
  13.     int minutesAmToPm;
  14.     int minutesPmToAm;
  15.     int minuteCheck;
  16.     int overageAmToPm;
  17.     int overagePmToAm;
  18.     bool minutesCheckBool;
  19.     double overageCost;
  20.     double overageAmToPmCost;
  21.     double overagePmToAmCost;
  22.     double totalBill;
  23.  
  24.     cout << "Please enter your account number: ";
  25.     cin  >> acctnum;
  26.     cout << endl
  27.          << "Service codes: \n"
  28.          << "R = Regular Service\n"
  29.          << "P = Premium Service\n"
  30.          << endl
  31.          << "Please enter your service code: ";
  32.     cin  >> servcode;
  33.     cout << "How many minutes have you used? " << endl
  34.          << "Minutes: ";
  35.     cin  >> minutes;
  36.  
  37.         if (servcode == 'r', 'R') //Regular Service
  38.         {
  39.             overage = minutes - 50;
  40.             overageCost = overage * 20;
  41.             totalBill = (overageCost / 100) + 10;
  42.  
  43.             cout << "\nAccount Number: " << acctnum << endl
  44.                  << "Service Type: Regular \n"
  45.                  << "Access Fee: $10\n"
  46.                  << "Minutes Used: " << minutes << " / 50\n"
  47.                  << "Minutes Over: " << overage << endl
  48.                  << "Overage Cost: $" << setprecision(2) << fixed << overageCost / 100 << " ($0.20 per minute.)\n"
  49.                  << endl
  50.                  << "Total Amount Due: $" << setprecision(2) << fixed << totalBill;
  51.         }
  52.  
  53.         else if (servcode == 'p', 'P') //Premium Service
  54.         {
  55.                 while (minutesCheckBool == 0) //Allows the user to reinput information instead of terminating the program.
  56.                 {
  57.                     cout << "You used a total of " << minutes << " minutes.\n"
  58.                          << "How many of those minutes were between 6:00am and 6:00pm?\n";
  59.                     cin  >> minutesAmToPm;
  60.                     cout << "Now how many of those minutes were between 6:00pm and 6:00am?\n";
  61.                     cin >> minutesPmToAm;
  62.  
  63.                     minuteCheck = minutesAmToPm + minutesPmToAm;
  64.  
  65.                     if (minuteCheck > minutes)
  66.                         cout << "Sorry, you input more than your total minutes. Please try again.";
  67.                     else
  68.                         minutesCheckBool = 1; //User's information is correct, so the loop ends.
  69.                 }
  70.  
  71.                 if (minutesCheckBool = 1) //doesn't run calculations until the user input information.
  72.                 {
  73.                     overageAmToPm = minutesAmToPm - 75;
  74.                     overageAmToPmCost = overageAmToPm * 10;
  75.                     overagePmToAm = minutesPmToAm - 100;
  76.                     overagePmToAmCost = overagePmToAm * 5;
  77.  
  78.                     totalBill = ((overagePmToAmCost + overageAmToPmCost) / 100) + 25;
  79.  
  80.                     cout << "Account Number: " << acctnum << endl
  81.                          << "Service Type: Premium\n"
  82.                          << "Access Fee: $25\n"
  83.                          << "Minutes Used: " << minutes << endl
  84.                          << "Daytime Minutes: " << minutesAmToPm << endl
  85.                          << "Night-Time Minutes: " << minutesPmToAm << endl
  86.                          << "Day Charges: " << setprecision(2) << fixed << overageAmToPmCost / 100 << " for $0.10 a minute over 75 minutes.\n"
  87.                          << "Night Charges: " << setprecision(2) << fixed << overagePmToAmCost / 100 << " for $0.05 a minute over 100 minutes.\n"
  88.  
  89.                          << "Total Amount Due: $" << setprecision(2) << fixed << totalBill;
  90.                 }
  91.         }
  92.  
  93.         cin.ignore(100, '\n');
  94.         cin.get();
  95.         return 0;
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement