Vous êtes sur la page 1sur 8

#include<iostream>

#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<cctype>
#include<iomanip>

using namespace std;

class Account
{
protected:

char name[30];
int ano;
char type;
public:
Account(){}
};

class Current_Account:public Account


{
float minbal;
float balance;
float deposit;
float withdraw;
float pen;
public:
Current_Account()
{
minbal=1000.00;
balance=0.0;
deposit=0.0;
withdraw=0.0;
pen=300.00;
}
void getdata(char acname[],int acno,char atype)
{
system("cls");
cout<<"\nDETAILS FOR THE CURRENT ACCOUNT";
strcpy(name,acname);
cout<<"\n\nACCOUNT HOLDERS NAME: "<<name;
ano=acno;
cout<<"\nACCOUNT NUMBER: "<<ano;
type=atype;
cout<<"\nACCOUNT TYPE: "<<type;
while(1)
{
cout<<"\nENTER THE BALANCE: ";
cin>>balance;
if(balance<minbal)
{
cout<<"\nBALANCE CANNOT BE LESS THAN Rs. "<<minbal;
continue;
}
else break;
}
cout<<"\n\nCHEQUE BOOK ISSUED FOR ACCOUNT NUMBER "<<ano;
getch();
}
void cdeposit()
{
system("cls");
cout<<"\nMONEY DEPOSIT SCREEN";
if(balance<minbal)
{
cout<<"\n\nBALANCE LESS THAN Rs. "<<minbal;
cout<<"\nPENALTY OF Rs. "<<pen<<" IMPOSED";
cout<<"\nKINDLY DEPOSIT THE AMOUNT ACCORDINGLY";
cout<<"\n\nENTER THE AMOUNT YOU WANT TO DEPOSIT: ";
cin>>deposit;
float diff;
diff=(minbal-balance)+pen;
if(deposit<diff)
{
cout<<"\nAMOUNT DEPOSITED NOT ENOUGH ";
diff=diff-deposit;
cout<<"\nAFTER IMPOSING PENALTY Rs. "<<diff<<" REMAINS TO BE
PAID";
if(deposit>pen)
balance=balance+diff;
if(diff>0)
{
cout<<"\nSTILL Rs. "<<diff<<" UNDER LIMIT";
getch();
}
}
else
{
diff=deposit-pen;
balance=balance+diff;
}
}
else
{
cout<<"\n\nENTER THE AMOUNT YOU WANT TO DEPOSIT: ";
cin>>deposit;
balance=balance+deposit;
}

cout<<"\n\nTHE BALANCE AFTER MAKING DEPOSIT IS: "<<balance;


getch();
}
void cwithdraw()
{
int ch;
while(1)
{
system("cls");
cout<<"\nMONEY WITHDRAWAL SCREEN";
cout<<"\n\nENTER THE WITHDRAWAL AMOUNT: ";
cin>>withdraw;
balance=balance-withdraw;
if(balance<=0)
{
cout<<"\n\nAFTER WITHDRAWAL BALANCE FALLING BELOW ZERO";
cout<<"\nCANNOT ALLOW TO WITHDRAW.........";
getch();
while(1)
{
cout<<"\n\nWOULD YOU LIKE WITHDRAW(1 FOR Y/2 FOR N) :";
cin>>ch;
if(ch==1)
break;
else if(ch==2)
break;
else
{
cout<<"\nINVALID CHOICE";
continue;
}
}
if(ch==1)
continue;
else if(ch==2)
{
cout<<"\n\nTHE BALANCE AFTER WITHDRAWAL IS: "<<balance;
getch();
break;
}
}
else break;
}
}
void penalty()
{
system("cls");
cout<<"\nPENALTY CALCULATION SCREEN";
cout<<"\n\nPENALTY CALCULATED FOR BALANCE FALLING BELOW Rs. "<<minbal;
if(balance<minbal)
{
cout<<"\n\nPENALTY OF Rs. 300 IMPOSED AS BALANCE Rs.
"<<balance;
getch();
}
else
{
cout<<"\nNO PENALTY IMPOSED";
getch();
}
}
void display_balance()
{
cout<<"\n\nLATEST BALANCE IS: "<<balance;
getch();
}

};

class Saving_Account:public Account


{
float balance;
float deposit;
float withdraw;
float rate;
int term;
public:
Saving_Account()
{
balance=0.0;
deposit=0.0;
withdraw=0.0;
rate=0.0;
term=0;
}
void getdata(char acname[],int acno,char atype)
{
system("cls");
cout<<"\nDETAILS FOR THE SAVINGS ACCOUNT";
strcpy(name,acname);
cout<<"\n\nACCOUNT HOLDERS NAME: "<<name;
ano=acno;
cout<<"\nACCOUNT NUMBER: "<<ano;
type=atype;
cout<<"\nACCOUNT TYPE: "<<type;
while(1)
{
cout<<"\nENTER THE BALANCE: ";
cin>>balance;
if(balance<=0)
{
cout<<"\nBALANCE MUST BE GREATER THAN ZERO";
getch();
continue;
}
else break;
}
while(1)
{
cout<<"ENTER THE INTEREST RATE: ";
cin>>rate;
if(rate<=0)
{
cout<<"\nRATE MUST BE GREATER THAN ZERO";
getch();
continue;
}
else break;
}
while(1)
{
cout<<"ENTER THE TERM: ";
cin>>term;
if(term<=0)
{
cout<<"\nTERM MUST BE GREATER THAN ZERO";
getch();
continue;
}
else break;
}
cout<<"\n\nCHEQUE BOOKS NOT ISSUED FOR SAVINGS ACCOUNT";
getch();
}
void sdeposit()
{
while(1)
{
system("cls");
cout<<"\nMONEY DEPOSIT SCREEN";
cout<<"\n\nENTER THE AMOUNT YOU WANT TO DEPOSIT: ";
cin>>deposit;
if(deposit<=0)
{
cout<<"\nDEPOSIT MUST BE OVER Rs. 0";
getch();
continue;
}
else
{
balance=balance+deposit;
cout<<"\n\nTHE BALANCE AFTER MAKING DEPOSIT IS: "<<balance;
getch();
break;
}
}
}
void swithdraw()
{
system("cls");
cout<<"\nMONEY WITHDRAWAL SCREEN";
cout<<"\n\nENTER THE WITHDRAWAL AMOUNT: ";
cin>>withdraw;
float temp;
temp=balance-withdraw;
if(temp<0)
{
cout<<"\nILLEGAL WITHDRAWAL BALANCE COMES TO LESS THAN ZERO";
cout<<"\n\nCANNOT ALLOW TO WITHDRAW";
getch();
}
else
{
balance=balance-withdraw;
cout<<"\n\nTHE BALANCE AFTER WITHDRAWAL IS: "<<balance;
getch();
}
}
void interest()
{
system("cls");
cout<<"\nINTEREST CALCULATION SCREEN";
cout<<"\n\nINTEREST CALCULATED AT "<<rate<<"% FOR "<<term<<" YEARS";
float ibal;
for(int ctr=1;ctr<=term;ctr++)
{
ibal=(balance*rate)/100;
balance=balance+ibal;
}
cout<<"\n\nBALANCE AFTER ADDING INTEREST IS:
"<<setprecision(3)<<balance;
getch();
}
void display_balance()
{
system("cls");
cout<<"\n\nLATEST BALANCE IS: Rs. "<<balance;
getch();
}

};

int main()
{
system("cls");
int ans;
while(1)
{
system("cls");
char c;
char acname[30];
int acno;
char atype;
cout<<"\nACCOUNT OPENING SYSTEM ";
fflush(stdin);
cout<<"\n\nENTER THE CUSTOMER NAME: ";
gets(acname);
cout<<"\nENTER THE ACCOUNT NUMBER: ";
cin>>acno;
int ch;
while(1)
{

cout<<"\nENTER THE ACCOUNT TYPE(C FOR CURRENT.../S FOR SAVINGS...): ";


cin>>atype;
atype=toupper(atype);

if(atype=='S')
{
Saving_Account s1;
s1.getdata(acname,acno,atype);
while(1)
{
system("cls");
cout<<"\n\tSAVINGS ACCOUNT MENU";
cout<<"\n\n1. DEPOSIT";
cout<<"\n2. WITHDRAW";
cout<<"\n3. COMPUTE INTEREST";
cout<<"\n4. DISPLAY BALANCE";
cout<<"\n5. EXIT";
cout<<"\n\nENTER YOUR CHOICE: ";
cin>>ch;
if(ch==1)
s1.sdeposit();
else if(ch==2)
s1.swithdraw();
else if(ch==3)
s1.interest();
else if(ch==4)
s1.display_balance();
else if(ch==5)
{
s1.display_balance();
break;
}
else
{
cout<<"\n\nINVALID CHOICE";
continue;
}

}
else if(atype=='C')
{
Current_Account c1;
c1.getdata(acname,acno,atype);
while(1)
{
system("cls");
cout<<"\n\tCURRENT ACCOUNT MENU";
cout<<"\n\n1. DEPOSIT";
cout<<"\n2. WITHDRAW";
cout<<"\n3. PENALTY CHECK";
cout<<"\n4. DISPLAY BALANCE";
cout<<"\n5. EXIT";
cout<<"\n\nENTER YOUR CHOICE: ";
cin>>ch;
if(ch==1)
c1.cdeposit();
else if(ch==2)
c1.cwithdraw();
else if(ch==3)
c1.penalty();
else if(ch==4)
c1.display_balance();
else if(ch==5)
{
c1.display_balance();
break;
}
else
{
cout<<"\n\nINVALID CHOICE";
continue;
}
}
}
else
{
cout<<"\nINVALID CHOICE";
}
while(1)
{
cout<<"\n\nDO YOU WANT TO CONTINUE(1 FOR YES/2 FOR NO) :";
cin>>ans;
if(ans==1)
break;
else if(ans==2)
break;
else continue;
}
if(ans==1)
break;
else break;
}
if(ans==1)
continue;
else if(ans==2)
break;
}

return 0;
}

Vous aimerez peut-être aussi