C++ Bank Project
C++ Bank Project
SCHOOL
COMPUTER
SCIENCE
BANKING
MANAGEMENT
MA
SESSION:- 2016-2017
SHRUTI SINGHAL
CLASS :- XII B
ROLL NO:- 9130603
SUBMITTED TO :- MRS. SEEMA MAM
ACKNOWLEDGEMENT
It is with great pleasure that I find myself
Planning down these lines to express my
sincere thanks to all the peoples who help me
along way I completing this project.
#include<fstream.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
#include<process.h>
#include<dos.h>
#include<iomanip.h>
#include<stdio.h>
/* ******************************
CLASS FOR ACCOUNT HOLDERS
****************************** */
class account
{
char name[20],coun[20],s[2],add[30],occu[20],nat[2];
int age,mm,yy,dd,dt,yt,mt;
long acc_no,nmoney,init,intr,imoney,money;
public:
void create_acc();
void show_det();
void edit_acc();
void interest();
void del_acc();
void alt_rec();
long get_acc()
{
return acc_no;
}
long getimoney()
{
return imoney;
}
long getnmoney()
{
return nmoney;
}
char* getname()
{
return name;
}
char* getadd()
{
return add;
}
char* getoccu()
{
return occu;
}
char* getcoun()
{
return coun;
}
}ac;
/* ********************************
FUNCTION TO CREATE ACCOUNT
******************************** */
void account::create_acc()
{
clrscr();
textbackground(YELLOW);
textcolor(BLUE);
money=0;
cout<<"\n\n\n\t~~~~~ENTER THE DETAILS OF ACCOUNT
HOLDER~~~~~\n\t\t";
cout<<"\t\t * NAME ::: ";
gets(name);
cout<<"\n\n\t\t * AGE(More Than 18 Years) ::: ";
again:
cin>>age;
if(age<18)
{
cout<<"\n \t PLEASE ENTER THE AGE MORE THAN 18 YEARS !!";
delay(1000);
goto again;
}
cout<<"\n\n\t\t * SEX(M/F) ::: ";
gets(s);
while(strcmp(s,"m")!=0&&strcmp(s,"M")!=0&&strcmp(s,"f")!=0&&strcm
p(s,"F")!=0)
{
cout<<"\n\t ENTER CORRECT SEX !!";
gets(s);
}
cout<<"\n\n\t\t * ADDRESS ::: ";
gets(add);
cout<<"\n\n\t\t * COUNTRY ::: ";
gets(coun);
cout<<"\n\n\t\t * OCCUPATION ::: ";
gets(occu);
clrscr();
cout<<"\n\n\t\t * ENTER CURRENT DATE ::: ";
cin>>dd;
while(dd<1 || dd>31)
{
cout<<"\n\t PLEASE ENTER CORRECT DATE !! ";
cin>>dd;
}
dt=dd;
cout<<"\n\n\t\t * ENTER MONTH ::: ";
cin>>mm;
while(mm<1 || mm>12)
{
cout<<"\n\t PLEASE ENTER CORRECT MONTH !! ";
cin>>mm;
}
mt=mm;
cout<<"\n\n\t\t ENTER YEAR ::: ";
cin>>yy;
while(yy<2000 || yy>2050)
{
cout<<"\n\t PLEASE ENTER CORRECT YEAR !! ";
cin>>yy;
}
yt=yy;
cout<<"\n\n\t\t ENTER THE TYPE OF ACCOUNT YOU WANT TO CREATE
(S/C) ::: ";
gets(nat);
while(strcmp(nat,"S")!=0&&strcmp(nat,"s")!=0&&strcmp(nat,"C")!=0&&
strcmp(nat,"c")!=0)
{
cout<<"\n\t PLEASE ENTER CORRECT TYPE OF ACCOUNT !! ";
gets(nat);
}
clrscr();
if(strcmp(nat,"s")==0 || strcmp(nat,"S")==0)
{
cout<<"\n\n\t\t INITIAL DEPOSIT (More Than 1000) ::: ";
cin>>imoney;
while(imoney<1000)
{
cout<<"\n\t INITIAL DEPOSIT SHOULD BE MORE THAN Rs. 1000.\n
ENTER SUFFICIENT AMOUNT !! ";
cin>>imoney;
}
init=imoney;
nmoney=init;
}
else if(strcmp(nat,"c")==0 || strcmp(nat,"C")==0)
{
cout<<"\n\n\t\t INITIAL DEPOSIT (More Than 2000) ::: ";
cin>>imoney;
while(imoney<2000)
{
cout<<"\n\t INITIAL DEPOSIT SHOULD BE MORE THAN Rs. 2000.\n
ENTER SUFFICIENT AMOUNT !! ";
cin>>imoney;
}
init=imoney;
nmoney=init;
}
clrscr();
gotoxy(30,20);
cout<<"\n\t ACCOUNT NUMBER ::: ";
randomize();
for(int i=0;i<9000;i++)
acc_no=random(i)+6000;
cout<<acc_no<<"\n\n\n\n\n";
delay(1000);
gotoxy(35,25);
textcolor(BLUE);
cout<<"\n ~~~~~ACCOUNT CREATED~~~~~ \n";
}
/* ********************************
FUNCTION TO MODIFY ACCOUNT
******************************* */
void modify(int mod)
{
char naam[20],pata[50],desh[20],kaam[20];
if(mod==1)
{
cout<<"\n ENTER NEW NAME :: ";
gets(naam);
strcpy(ac.getname(),naam);
}
else if(mod==2)
{
cout<<"\n ENTER NEW COUNTRY :: ";
gets(desh);
strcpy(ac.getcoun(),desh);
}
else if(mod==3)
{
cout<<"\n ENTER NEW ADDRESS :: ";
gets(pata);
strcpy(ac.getadd(),pata);
}
else if(mod==4)
{
cout<<"\n ENTER NEW OCCUPATION :: ";
gets(kaam);
strcpy(ac.getoccu(),kaam);
}
else if(mod==5)
{
getch();
}
}
/* ********************************
FUNCTION TO SHOW ACCOUNT
DETAILS
******************************** */
void account::show_det()
{
cout<<"\n\n\t\t \7\7\7\7 ACCOUNT DETAILS \7\7\7\7 ";
cout<<"\n\t ACCOUNT NUMBER :: "<<acc_no;
cout<<"\n\t NAME :: ";
puts(name);
cout<<"\n\t AGE :: "<<age;
cout<<"\n\t ADDRESS :: ";
puts(add);
cout<<"\n\t COUNTRY :: ";
puts(coun);
cout<<"\n\t OCCUPATION :: ";
puts(occu);
cout<<"\n\t OPENING DATE :: " << dt <<"/" <<mt << "/"<<yt;
cout<<"\n\t NATURE OF BANK ACCOUNT :: ";
if(strcmp(nat,"s")==0 || strcmp(nat,"S")==0)
cout<<"SAVINGS";
else
cout<<"CURRENT";
cout<<"\n\t INITIAL AMOUNT :: Rs."<<init;
cout<<"\n\t NET BALANCE :: Rs."<<nmoney;
}
/* ********************************
FUNCTION TO EDIT ACCOUNT
DETAILS
******************************** */
void account::edit_acc()
{
ifstream fin("acc.dat",ios::binary);
ofstream fout("temp.dat",ios::app|ios::binary);
if(!fin)
{
cout<<"\n FILE NOT CREATED !! ";
exit(getch());
}
long a,wid,dep;
int mod,ed;
char y;
cout<<"\n\n ENTER THE ACCOUNT NUMBER :: ";
cin>>a;
clrscr();
while(!fin.eof())
{
fin.read((char*)&ac,sizeof(ac));
if(fin.eof())
{
break;
}
if(get_acc()==a)
{
cout<<"\n\n\t\t $$$$$$$$$$$$$$$$$$$$$$$$$ ";
cout<<"\n\t\t 1. WITHDRAW MONEY "
<<"\n\t\t 2. DEPOSIT MONEY "
<<"\n\t\t 3. CHANGE IN YOUR ACCOUNT ";
cout<<"\n\t PLEASE ENTER YOUR CHOICE :: ";
cin>>ed;
if(ed==1)
{
cout<<"\n\t YOUR NET BALANCE IS Rs."<<nmoney;
cout<<"\n\t PLEASE ENTER THE AMOUNT YOU WANT TO WITHDRAW :: ";
withdrawn:
cin>>wid;
if(wid>(nmoney-1000))
{
cout<<"\n\n\t TRANSACTION CANNOT BE DONE !!! PLEASE ENTER THE
AMOUNT YOU WANT TO WITHDRAW !!! ";
goto withdrawn;
}
nmoney=nmoney-wid;
clrscr();
delay(500);
gotoxy(30,20);
cout<<" ~~~~~ TRANSACTION DONE ~~~~~ ";
}
else if(ed==2)
{
cout<<"\n\t YOUR NET BALANCE IS Rs."<<nmoney;
cout<<"\n\t\t PLEASE ENTER THE AMOUNT YOU WANT TO DEPOSIT :: ";
cin>>dep;
nmoney=nmoney+dep;
clrscr();
delay(500);
gotoxy(30,20);
cout<<"\n ~~~~~TRANSACTION DONE ~~~~~ \n";
}
else if(ed==3)
{
clrscr();
show_det();
modify:
cout<<"\n\n\t\t \2\2\2\2\2\2\2\2\2\2\2\2\2 ";
cout<<"\n\t\t 1. NAME : "
<<"\n\t\t 2. COUNRTY : "
<<"\n\t\t 3. ADDRESS : "
<<"\n\t\t 4. OCCUPATION : "
<<"\n\t\t 5. EXIT ";
cout<<"\n\t PLEASE ENTER YOUR CHOICE :: ";
cin>>mod;
modify(mod);
if(mod==5)
{
delay(500);
clrscr();
gotoxy(30,20);
cout<<"\n NO CHANGE IS DONE !!! ";
}
if(mod>5)
{
cout<<"\n WRONG CHOICE ENTERED !!!! ";
exit(getch());
}
cout<<"\n\n\t WANT TO CHANGE MORE (Y/N) :: ";
cin>>y;
if(y=='Y' || y=='y')
{
goto modify;
}
else
{
clrscr();
delay(500);
gotoxy(30,20);
cout<<"\n\t ~~~~ ACCOUNT IS ALTERED ~~~~ ";
}
}
else
{
cout<<"\n YOU HAVE ENTERED THE WRONG CHOICE !!!!! ";
exit(getch());
}
}
fout.write((char*)&ac,sizeof(ac));
}
fin.close();
fout.close();
remove("acc.dat");
rename("temp.dat","acc.dat");
}
/* ********************************
FUNCTION TO DELETE ACCOUNT
******************************** */
void account::del_acc()
{
long ant;
char found='f',confirm='n';
cout<<"\n ENTER THE ACCOUNT NUMBER TO BE DELETED :: ";
cin>>ant;
ifstream fin("acc.dat",ios::binary);
ofstream fout("temp.dat",ios::binary);
while(!fin.eof())
{
fin.read((char*)&ac,sizeof(ac));
if(fin.eof())
{
break;
}
if(ac.get_acc()==ant)
{
show_det();
found='t';
cout<<"\n\t ARE YOU SURE THAT YOU WANT TO DELETE THIS RECORD
(Y/N) :: ";
cin>>confirm;
if(confirm=='N' || confirm=='n')
fout.write((char*)&ac,sizeof(ac));
clrscr();
gotoxy(30,20);
if(confirm=='Y' || confirm=='y')
cout<<"\n ~~~~~ ACCOUNT IS DELETED ~~~~~ \n ";
}
else
fout.write((char*)&ac,sizeof(ac));
}
if(found=='f')
cout<<"\n\n WRONG ACCOUNT NUMBER ENTERED !!!! ";
fin.close();
fout.close();
remove("acc.dat");
rename("temp.dat","acc.dat");
}
/* ********************************
FUNCTION TO DISPLAY THE
FRONT PAGE
******************************* */
int show()
{
char ch;
clrscr();
cout<<"\n\n\n" <<setw(50)<<"$$$$$$$$$$$$$$$$$$$$$$$\n"
<<setw(50)<<"$$ _________________ $$\n"
<<setw(50)<<"$$ ABOUT THE PROJECT $$\n"
<<setw(50)<<"$$ _________________ $$\n"
<<setw(50)<<"$$$$$$$$$$$$$$$$$$$$$$$\n";
delay(300);
cout<<"\n\n\n # IN THIS PROJECT THE RECORDS OF DAILY
TRANSACTION IN A BANK IS KEPT.\n";
delay(100);
cout<<"\n\n\n # THE MAIN MENU ALLOWS USER TO ACCESS AN
ACCOUNT HOLDER DETAILS.\n";
delay(100);
cout<<"\n\n\n\n\n\t PRESS (m/M) TO SEE THE MAIN MENU..!!!!";
cin>>ch;
return ch;
}
/* ******************************************
FUNCTION TO DISPLAY MAIN MENU
****************************************** */
int menu()
{
textcolor(BLUE+BLINK);
cout<<"\n\n\n\n\n"
<<setw(50)<<"\t
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n"
<<setw(50)<<"\t %%%% WELCOME TO THE B@NK %%%%\n"
<<setw(50)<<"\t %%%% ******* ** *** **** %%%%\n"
<<setw(50)<<"\t%%%%%%%%%%%%%%%%%%%%%%%%%%%%%\n";
textcolor(BLUE);
textbackground(YELLOW);
int no;
cout<<"\n\n \2\2\2\2 MAIN MENU \2\2\2\2 \n\n ";
cout<<"\n\n\t 1. ACCOUNT HOLDERS "
//<<"\n\n\t 2. EMPLOYEES "
<<"\n\n\t 2. EXIT";
cout<<"\n\n\n PLEASE ENTER YOUR CHOICE :";
cin>>no;
return no;
}
/* ******************************************
FUNCTION TO DISPLAY ACCOUNT
MENU
****************************************** */
int acmenu()
{
int a=0;
cout<<"\n\n\n\n\n"
<<setw(30)<<"\t\t ACCOUNT HOLDERS \n"
<<setw(20)<<"\t\t \4\4\4\4 MENU \4\4\4\4 \n"
<<"\n 1. CREATE A NEW ACCOUNT."
<<"\n 2. TRANSACTION & EDIT."
<<"\n 3. VIEW ACCOUNT."
<<"\n 4. DELETE ACCOUNT."
<<"\n 5. VIEW ALL ACCOUNT."
<<"\n 6. EXIT.";
cout<<"\n\n PLEASE ENTER ANY DESIRED OPTION :: ";
cin>>a;
return a;
}
/* ********************************
FUNCTION TO CALL ALL
FUNCTIONS
******************************* */
void call()
{
int t1,t2;
int t=menu();
clrscr();
if(t==1)
t1=acmenu();
clrscr();
ofstream fout("acc.dat",ios::app | ios::binary);
if(t1==1)
{
ac.create_acc();
fout.write((char*)&ac,sizeof(ac));
fout.close();
}
else if(t1==2)
{
ac.edit_acc();
}
else if(t1==3)
{
float rn,p;
char foud='n';
ifstream fin("acc.dat",ios::binary);
if(!fin)
{
cout<<"\n!!!! FILE NOT CREATED !!!!";
exit(getch());
}
cout<<"\n PLEASE ENTER THE ACCOUNT NUMBER OF HOLDER:=>";
cin>>rn;
clrscr();
while(!fin.eof())
{
fin.read((char*)&ac,sizeof(ac));
if(ac.get_acc()==rn)
{
ac.show_det();
foud='y';
break;
}
}
gotoxy(34,20);
if(foud=='n')
cout<<".....WRONG ACCOUNT NUMBER ENTERED.....";
fin.close();
}
else if(t1==4)
{
ac.del_acc();
}
else if(t1==5)
{
fstream fio("acc.dat",ios::in | ios::out | ios::binary);
cout<<"\n"<<setw(50)<<"LIST OF ACCOUNTS\n";
textcolor(RED);
cout<<" ---- -- --------");
cout<<" ---- -- --------");
cout<<"\n\n"<<setw(15)<<"ACCOUNT
NO"<<setw(25)<<"NAME"<<setw(35)<<"BALANCE";
cout<<"\n"<<setw(15)<<"~~~~~~~
~~"<<setw(25)<<"~~~~"<<setw(35)<<"~~~~~~~";
textcolor(BLUE);
fio.seekp(0);
while(!fio.eof())
{
fio.read((char*)&ac,sizeof(ac));
if(fio.eof())
{
break;
}
ac.alt_rec();
}
fio.close();
}
else
{
gotoxy(30,23);
cout<<".......EXIT IN TWO SECONDS.......";
delay(2000);
exit(0);
}
}
/* ********************************
FUNCTION MAIN
******************************* */
void main()
{
clrscr();
show();
getch();
clrscr();
char a;
do
{
call();
cout<<"\n\n\n\n\t\t\t\t EXIT....... ";
getch();
clrscr();
}
while(a>=0);
getch();
}
OUTPUT
BIBLIOGRAPHY
1) Computer Science with C++ Text
Book by SUMITA ARORA ( XII & XI ).
2) www.google.com
3) Together With of Computer
Science with C++.
4) Teachers , Friends & Family
members.
Thank You….!!
For
Reading
My Program