
//*****************************************************************************
////  Course:             COMS 2203 Foundations of Computer Programming II Sect. 2
////  Semester:           Fall 2004
////  Assignment Number:  #5                             
////  Author Name:        DarC KonQuesT                        
////  Date Written:       September 29, 2004
////                                                         
////  Description of Program:                              
////  A menu driven program to calculate the balance of a checking account    
////  using the checkbook.h class                             
////*****************************************************************************
#include <iostream>
#include "Checkbook.h"

using namespace std;


void print_menu(char& input)
{
  cout << endl << "--- Menu ---" << endl;
  cout << "(D) Deposit" << endl;
  cout << "(C) Check Withdraw" << endl;
  cout << "(S) Service Charge" << endl;
  cout << "(B) Balance" << endl;
  cout << "(Q) Quit" << endl << endl;
  cout << "Your choice ===> ";
  cin >> input;
}

int main()
{
  Checkbook account;
  char input;
  float money, balance;

  account.Open(0);
  cout << "CHECKING ACCOUNT BALANCE" << endl;
  print_menu(input);

  while(input != 'q' && input != 'Q')
  {
    if(input == 'D' || input == 'd')
    {
      cout << endl << endl << "Enter deposit amount:  $";
      cin >> money;
      account.Deposit(money);
      print_menu(input);
    }
    else if(input == 'C' || input == 'c')
    {
      cout << endl << endl << "Enter check amount:  $";
      cin >> money;
      account.WriteCheck(money);
      print_menu(input);
    }
    else if(input == 'S' || input == 's')
    {
      cout << endl << endl << "Enter service charge:  $";
      cin >> money;
      account.WriteCheck(money);
      print_menu(input);
    }
    else if(input == 'B' || input == 'b')
    {
      balance = account.CurrentBalance();
      if(balance > 0)
      {
        cout << endl << endl << "Current balance is $" << balance << endl << endl;
        print_menu(input);
      }
      else if(balance < 0)
      {
        balance = balance * -1;
        cout << endl << endl << "Current balance is -$" << balance << endl << endl;
        print_menu(input);
      }
    }
    else
    {
      cout << endl << "Error : Incorrect Input." << endl;
      print_menu(input);
    }
    
  }

return 0;
}

