We help IT Professionals succeed at work.

We've partnered with Certified Experts, Carl Webster and Richard Faulkner, to bring you a podcast all about Citrix Workspace, moving to the cloud, and analytics & intelligence. Episode 2 coming soon!Listen Now

x

C++ - Checkbook Problem

MrParkes
MrParkes asked
on
Medium Priority
1,135 Views
Last Modified: 2008-02-01
This is the second problem I need to figure out that is needed by tomorrow.

After many years of being frustratedby a check book that just won't balance you decide to make a program that does it for you.  The program should display a list of choices: D for deposit, C for check, W for withdrawal, and Q for quit.  If D is selected ask for the amount of the deposit, and add it to the account balance.  If the user enters C, ask for the amount of the check and subtract it from the balance.  If the user enters a W, ask for the amount of the withdrawal and subtract it from the balance.  When the user enters a Q, the program should display the opening balance, total amount deposited, total amount withdrawn, total amount of the checks and the final balance.  If the user enters something other than D, W, C, or Q, the program should display an error message and redisplay the menu.  Allow the user to enter either upper or lower case letters.

Here's the sample pseudocode to help with the program code.

START
   Initialize variables
     total_balance to 0
     total_checks to 0
     total_withdrawals to 0
     total_deposits to 0

Process
   get starting balance

   do ... while loop
      prompt for type of transaction
      get transaction
      switch
         Deposit
           increase balance
           increase total_deposits
         Check
           decrease balance
           increase total_checks
         Withdrawal
           decrease balance
           increase total_withdrawals
   end do while loop as Q was pressed

OUTPUT
   Display summary data
       show balance
       show total_deposits
       show total_checks
       show total_withdrawals

END

Thanks for being there.  This will help pull my ass out of the fire.
Comment
Watch Question

CERTIFIED EXPERT
Top Expert 2006

Commented:
Hi MrParkes,

Post the code and we will try to help with it. We can help you with assignments but we can't do them for you.

Cheers!
sunnycoder

Author

Commented:
Here is yet another beginner try at coding C++.  I know in my code that I am supposed to show an acccumulator of some kind but I'm not sure how.  I also have to show the summary somehow.

#include <iostream>
#include <iomanip>
#include <cstdlib>

using namespace std;

int main ()
{

      int            transaction_code,
                  total_balance,
                  total_checks,
                  total_withdrawals,
                  total_deposits,
                  Quit;

      cout << setprecision(2)
             << setiosflags(ios::fixed)
             << setiosflags(ios::showpoint);

      total_balance = total_checks = total_withdrawals = total_deposits = 0;

;      cout << "Enter the starting balance: ";
      cin >> total_balance;

      cout << endl;
      cout << "Enter the transaction code according to the following."
             << endl << endl;
      cout << "Deposit,            enter D" << endl;
      cout << "Check,                  enter C" << endl;
      cout << "Withdrawal,      enter W" << endl;
      cout << "Quit                  enter Q" << endl << endl;
      cout << "Please make your selection: ";

      cin.get();
      transaction_code = cin.get();

      switch (transaction_code)
      {
            case 'D':
            case 'd':
                  total_deposits;
                  break;
            case 'C':
            case 'c':
                  total_checks;
                  break;
            case 'W':
            case 'w':
                  total_withdrawals;
                  break;
            case 'Q':
            case 'q':
                  Quit;
                  break;
            default:
            cout << endl << endl
                   <<"Invalid Transaction Code!  Try Again." << endl;
            exit(1);
            break;
      }

      cout << endl << endl;
      cout << "The balance is " << total_balance << endl;

      cout << "Total Deposits are: " << total_deposits << endl;
      cout << endl;

      cout << "Total Checks are: " << total_checks << endl;
      cout << endl;

      cout << "Total Withdrawals are: " << total_withdrawals << endl;
      cout << endl;


      return 0;

}
CERTIFIED EXPERT
Top Expert 2006
Commented:
Its a good start ... You need to
a) Put the whole menu printing, choice selection and switch case in a loop. This can be a do while loop organized as

do {
   //print menu
   //read choice
   //switch case to act on choice
} while (choice was not Quit)

b) Put actual processing in the switch case .. e.g.
          case 'D':
          case 'd':
               total_deposits;
               break;
>If D is selected ask for the amount of the deposit, and add it to the account balance.
So in this case, you prompt asker for the amount of money to be depoited .. read the input and add it to total_deposits ... just 3 lines of code and you have a working case!!!

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts

Commented:
I'm pretty sure you're in the same class as me-I'm having isssues with this program also.  I may seek tutoring-my email is <email id edited out by sunnycoder, Page Editor>if you want to do some sort of online study group thing.
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.