#include<iostream>
#include<string>
using namespace std;
class Account{
protected :
string accountHolderName;
int accountNumber;
public :
Account( string accNam,int accNum) {
accountHolderName = accNam;
accountNumber = accNum;
}
} ;
class SavingsAccount: public Account{
protected :
float instrestRate;
float balance;
public :
SavingsAccount( string accNam,int accNum,float iRate,float balan ) : Account( accNam, accNum) {
instrestRate = iRate;
balance = balan;
}
void displayDetails( ) {
cout << "Account Holder Name is " << accountHolderName<< endl;
cout << "Account Number is " << accountNumber<< endl;
cout << "interest Rate is " << instrestRate<< endl;
cout << "balance is " << balance<< endl;
}
} ;
class CurrentAccount: public Account{
protected :
int overDraftLimit;
float balance;
public :
CurrentAccount( string accNam,int accNum,int oDraLim,float balan) : Account( accNam, accNum) {
overDraftLimit = oDraLim;
balance = balan;
}
void displayDetails( ) {
cout << "Account Holder Name is " << accountHolderName<< endl;
cout << "Account Number is " << accountNumber<< endl;
cout << "Over Draft Limit is " << overDraftLimit<< endl;
cout << "balance is " << balance<< endl;
}
} ;
int main( ) {
SavingsAccount sacc( "Minhaj" ,101 ,10 ,2000 ) ;
sacc.displayDetails ( ) ;
CurrentAccount cAcc( "Korim" ,100 ,10 ,5000 ) ;
cAcc.displayDetails ( ) ;
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHN0cmluZz4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIEFjY291bnR7CnByb3RlY3RlZDoKICAgIHN0cmluZyBhY2NvdW50SG9sZGVyTmFtZTsKICAgIGludCBhY2NvdW50TnVtYmVyOwogICAgcHVibGljOgogICAgQWNjb3VudChzdHJpbmcgYWNjTmFtLGludCBhY2NOdW0pewogICAgICAgIGFjY291bnRIb2xkZXJOYW1lID0gYWNjTmFtOwogICAgICAgIGFjY291bnROdW1iZXIgPSBhY2NOdW07CiAgICB9Cgp9OwoKCmNsYXNzIFNhdmluZ3NBY2NvdW50OiBwdWJsaWMgQWNjb3VudHsKcHJvdGVjdGVkOgogICAgZmxvYXQgaW5zdHJlc3RSYXRlOwogICAgZmxvYXQgYmFsYW5jZTsKcHVibGljOgogICAgU2F2aW5nc0FjY291bnQoc3RyaW5nIGFjY05hbSxpbnQgYWNjTnVtLGZsb2F0IGlSYXRlLGZsb2F0IGJhbGFuICk6IEFjY291bnQoIGFjY05hbSwgYWNjTnVtKXsKICAgICAgICBpbnN0cmVzdFJhdGUgPSBpUmF0ZTsKICAgICAgICBiYWxhbmNlID0gYmFsYW47CiAgICB9CgogICAgdm9pZCBkaXNwbGF5RGV0YWlscygpewogICAgICAgIGNvdXQ8PCJBY2NvdW50IEhvbGRlciBOYW1lIGlzICI8PCBhY2NvdW50SG9sZGVyTmFtZTw8ZW5kbDsKICAgICAgICBjb3V0PDwiQWNjb3VudCBOdW1iZXIgaXMgIjw8IGFjY291bnROdW1iZXI8PGVuZGw7CiAgICAgICAgY291dDw8ImludGVyZXN0IFJhdGUgaXMgIjw8IGluc3RyZXN0UmF0ZTw8ZW5kbDsKICAgICAgICBjb3V0PDwiYmFsYW5jZSBpcyAiPDwgYmFsYW5jZTw8ZW5kbDsKICAgIH0KfTsKCgpjbGFzcyBDdXJyZW50QWNjb3VudDogcHVibGljIEFjY291bnR7CnByb3RlY3RlZDoKICAgIGludCBvdmVyRHJhZnRMaW1pdDsKICAgIGZsb2F0IGJhbGFuY2U7CnB1YmxpYzoKICAgIEN1cnJlbnRBY2NvdW50KHN0cmluZyBhY2NOYW0saW50IGFjY051bSxpbnQgb0RyYUxpbSxmbG9hdCBiYWxhbik6IEFjY291bnQoIGFjY05hbSwgYWNjTnVtKXsKICAgICAgICBvdmVyRHJhZnRMaW1pdCA9IG9EcmFMaW07CiAgICAgICAgYmFsYW5jZSA9IGJhbGFuOwogICAgfQoKICAgIHZvaWQgZGlzcGxheURldGFpbHMoKXsKICAgICAgICBjb3V0PDwiQWNjb3VudCBIb2xkZXIgTmFtZSBpcyAiPDwgYWNjb3VudEhvbGRlck5hbWU8PGVuZGw7CiAgICAgICAgY291dDw8IkFjY291bnQgTnVtYmVyIGlzICI8PCBhY2NvdW50TnVtYmVyPDxlbmRsOwogICAgICAgIGNvdXQ8PCJPdmVyIERyYWZ0IExpbWl0IGlzICI8PCBvdmVyRHJhZnRMaW1pdDw8ZW5kbDsKICAgICAgICBjb3V0PDwiYmFsYW5jZSBpcyAiPDwgYmFsYW5jZTw8ZW5kbDsKICAgIH0KfTsKCgppbnQgbWFpbigpewogICAgU2F2aW5nc0FjY291bnQgc2FjYygiTWluaGFqIiwxMDEsMTAsMjAwMCk7CiAgICBzYWNjLmRpc3BsYXlEZXRhaWxzKCk7CgogICAgQ3VycmVudEFjY291bnQgY0FjYygiS29yaW0iLDEwMCwxMCw1MDAwKTsKICAgIGNBY2MuZGlzcGxheURldGFpbHMoKTsKfQoKCgoKCg==