//DISPLAY 10.6 Class with Constructors //Program to demonstrate the class BankAccount. #include using namespace std; //Class for a bank account: class BankAccount { public: BankAccount(int dollars, int cents, double rate); //Initializes the account balance to $dollars.cents and //initializes the interest rate to rate percent. BankAccount(int dollars, double rate); //Initializes the account balance to $dollars.00 and //initializes the interest rate to rate percent. BankAccount( ); //Initializes the account balance to $0.00 and the interest rate to 0.0%. void set(int dollars, int cents, double rate); //Postcondition: The account balance has been set to $dollars.cents; //The interest rate has been set to rate percent. void set(int dollars, double rate); //Postcondition: The account balance has been set to $dollars.00; //The interest rate has been set to rate percent. void update( ); //Postcondition: One year of simple interest has been added to the account //balance. double getBalance( ); //Returns the current account balance. double getRate( ); //Returns the current account interest rate as a percentage. void output(ostream& outs); //Precondition: If outs is a file output stream, then //outs has already been connected to a file. //Postcondition: Account balance and interest rate have been written to the //stream outs. private: double balance; double interestRate; double fraction(double percent); //Converts a percentage to a fraction. For example, fraction(50.3) //returns 0.503. }; int main( ) { BankAccount account1(100, 2.3), account2; cout << "account1 initialized as follows:\n"; account1.output(cout); cout << "account2 initialized as follows:\n"; account2.output(cout); account1 = BankAccount(999, 99, 5.5); cout << "account1 reset to the following:\n"; account1.output(cout); return 0; } BankAccount::BankAccount(int dollars, int cents, double rate) { if ((dollars < 0) || (cents < 0) || (rate < 0)) { cout << "Illegal values for money or interest rate.\n"; return; } balance = dollars + 0.01*cents; interestRate = rate; } BankAccount::BankAccount(int dollars, double rate) { if ((dollars < 0) || (rate < 0)) { cout << "Illegal values for money or interest rate.\n"; return; } balance = dollars; interestRate = rate; } BankAccount::BankAccount( ) : balance(0), interestRate(0.0) { //Body intentionally empty }