Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Purpose Inheritance, exceptions For this project you will create 3 classes. 1. A

ID: 3765964 • Letter: P

Question

Purpose Inheritance, exceptions For this project you will create 3 classes. 1. Account class Members - -acctNum : long -balance: double Methods- +getAcct0 long +getBalance0: double +setAcct(acct:long) +setBalance (balance:double) +Account(acct:long, bal:double) +toString0:string +computelntr(years:int):double virtual //returns Account ##acctNum Balance-balance // balance and the acctNum should never be set to a negative 2. Checking class : derived from Account Methods- +computeIntr(yearsint)double // returns 2% of the (balance > $700).years +Checkingfacct.long, bal:double) //calls the superclass constructor +toString0:string //return Checking Account #=accNum Balance-balance 3. Saving class: derived from Account Attributes- -intRate : double Methods - // interest rate // returns the interest rate //sets the interest rate-do not allow negatives + getRate0: double +setRate (rate:double) +computelntr(years:int):double //returns (1+ intRate)years balance-balance +Savings(acct:long, bal:double, rate:double)// calls the superclass constructor +toString0:string //prints Savings Account #-accNum Balances balance Rates rate The main will create an array of 100 pointers to Accounts Populate your array with 5 checking accounts with numbers 100 And 5 savings accounts with number 200-204 Initialize all the balances to $1000+10*acctNum 104

Explanation / Answer

#include <iostream>
#include <sstream>
#include <string.h>

using namespace std;
class Account
{
   long acctNum;
   double balance;
   double interest;
   public:
       long getAcct()
       {
           return acctNum;  
       }
       double getBalance()
       {
           return balance;
       }
       void setAcct(long acct)
       {
           acctNum=acct;
       }
       void setBalance(double bal)
       {
           balance=bal;
       }
       Account(long acct, double bal)
       {
           acctNum=acct;
           balance=bal;
       }
       string toString()
       {
           stringstream ss;
           string ans;  
           ss<<" Checking Account # "<<accountNumber<<" Balance "<<balance;
   ans=ss.str();
   return ans;
       }
       virtual double computeIntr(int years);
};
class Checking :public Account
{
   public:
       virtual double computeIntr(int years)      
       {
           int R=2;
           if(balance>700)
           interest=balance*years* (R/100);
           return interest;
       }
       Checking(long acct, double bal):acctNum(acct),balance(bal)
       {
          
       }
};
class Saving :public Account
{
   double intRate;
   public:
       double getRate()
       {
           return intRate;
       }
       void setRate(double rate)
       {
           intRate=rate;
       }
       double computeIntr(int years)      
       {
           double i;
           i=(1+intRate)*years*balance;
           return i;
       }
       Savings(long acct, double bal, double rate):acctNum(acct),balance(bal)
       {
           intRate=rate;
       }
       string toString()
       {
           stringstream ss;
           string ans;  
           ss<<" Saving Account # "<<acctNum<<" Balance "<<balance <<" Rate "<<intRate;
   ans=ss.str();
   return ans;
       }
};
int main()
{
   Account *ACC[100];
   Checking C[5];
   Saving S[5];
   int a=100;
   int b=200;
   for(int i=0;i<5;i++)
   {
   C[i].setAcct(a++);
C[i].setBalance(1000+(10*Checking.getAcct()));
Account[i] = C[i];
   }
   for(int i=0;i<5;i++)
   {
   S[i].setAcct(a++);
S[i].setBalance(1000+(10*Saving.getAcct()));
Account[i+5] = S[i];
   }
   char q;
   char ans;
   int acc;
   while(ans!='q')
   {
       cout<<" Account#";
       cin>>accountNumber;
       if(accountNumber>99 && accountNumber<105)
           acc=accountNumber-100;
       else
           acc= accountNumber-200+5;
       cout<<" > s - Set balance";
       cin>>balance;
       ACC[acc]->setBalance(balance);
       cout<<" > d - Display using toString function";
   cin>>ans;
   if(ans=='d')
   {
   cout<<ACC[acc]->toString();
       }
       cout<<" > i - Enter number of years to get interest";
       cin>>years;
       cout<<ACC[acc]->computeIntr(years);
       cout<<" > q - quit processing this account");
       cin>>q;
   }
return 0;
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote