Print Friendly and PDF
C++ ATM machine project ,display all record etc with the help file handling
#include<iostream>
#include<fstream>
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <dos.h>
using namespace std; 
void punit (void);
void deposit(void);
void addrecord();
void delrecord();
void modrecord();
void disprecord();
void dispall();
void withdraw();
float w,z;
class account
{
int accountno,cls;
char name[30],type;
float deposit,withdraw;
public:
account()
{
deposit=withdraw=0;
}
int giveaccountno()
{
return accountno;
}
void getdata(int mrno)
{
accountno=mrno+1;
cout<<"ACCOUNT NUMBER :: ";
cout<<accountno;
cout<<"ENTER YOUR NAME :: ";
gets(name);
cout<<" ";
cout<<"ENTER TYPE OF ACCOUNT SAVING(s)/CURRENT(c) :: ";
cin>>type;
cout<<" ";
cout<<"ENTER INITIAL AMOUNT ::Rs ";cin>>deposit;
cout<<" ";
}
void withdrawal(int m)
{
cout<<"AMOUNT BEFORE WITHDRAWING::Rs "<<deposit<<" ";
deposit=deposit-m;
cout<<"AMOUNT AFTER WITHDRAWING::Rs "<<deposit;
}
void deposital(int m)
{
cout<<"AMOUNT BEFORE DEPOSIT::Rs "<<deposit<<" ";
deposit=deposit+m;
cout<<"AMOUNT AFTER DEPOSIT ::Rs "<<deposit;
}
void dispdata()
{
int scrnt=0;
if(scrnt==1)
{
system("cls");
cout<<"DISPLAY ALL MENU ";
scrnt=0;
}
cout<<"ACCOUNT NUMBER ::";
cout<<accountno;
cout<<"NAME OF DEPOSITER ::";
cout<<name;
cout<<"TYPE OF ACCOUNT SAVING(s)/CURRENT(c) :: ";
cout<<type;
cout<<"BALANCE ::Rs ";
cout<<deposit;
scrnt++;
}
};
int main()
{
int menuch;
punit();
do
{
system("cls");
cout<<"MAIN MENU"<<endl;
cout<<"1.NEW ACCOUNT "<<endl;
cout<<"2.CLOSE AN ACCOUNT "<<endl;
cout<<"3.MODIFY AN ACCOUNT "<<endl;
cout<<"4.DISPLAY AN ACCOUNT "<<endl;
cout<<"5.DISPLAY ALL RECORDS "<<endl;
cout<<"6.WITHDRAW AMOUNT"<<endl;
cout<<"7.DEPOSIT AMOUNT"<<endl;
cout<<"8.EXIT "<<endl;
cout<<"ENTER YOUR CHOICE "<<endl;
cin>>menuch;
switch(menuch)
{
case 1:
addrecord();
break;
case 2:
delrecord();
break;
case 3:
modrecord();
break;
case 4:
disprecord();
break;
case 5:
dispall();
break;
case 6:
withdraw();
break;
case 7:
deposit();
break;
}
}
while(menuch!=8);
}
void addrecord()
{
account obj_1,obj_2;
fstream fout;
fout.open("banking.txt",ios::in|ios::binary);
if(!fout)
{
cout<<"FILE OPEN ERROR ";getch();return;}
int recsize=sizeof(account);
fout.seekg(0,ios::end);
fout.seekg(-1*recsize,ios::cur);
fout.read((char*)&obj_1,recsize);
int mrno=obj_1.giveaccountno();
fout.close();
cout<<"ADD MENU";
obj_2.getdata(mrno);
fout.open("banking.txt",ios::app|ios::binary);
if(!fout)
{
cout<<"FILE OPEN ERROR ";
getch();return;}
fout.write((char*)&obj_2,recsize);
cout<<"RECORD ADDED TO DATABASE"<<" Press any key to continue... ";
getch();
fout.close();
}
void dispall()
{
account obj_3;
fstream fout;
int recsize=sizeof(account);
int countrec=0;
system("cls");
cout<<"DISPLAY ALL MENU";
fout.open("banking.txt",ios::in);
if(!fout)
{
cout<<"FILE OPEN ERROR ";getch();
return;
}
while(fout.read((char*)&obj_3,recsize))
{
obj_3.dispdata();
countrec++;
cout<<"PRESS ANY KEY FOR NEXT....";
getch();
}
system("cls");
cout<<"END OF FILE.TOTALNUMBER OF RECORDS..."<<countrec;
cout<<"Press any key......";
getch();
fout.close();
}
void disprecord()
{
account obj_4;
fstream fout;
int mrno,flag=0;
int recsize=sizeof(account);
system("cls");
cout<<"DISPLAY A RECORD MENU";
fout.open("banking.txt",ios::in);
if(!fout)
{
cout<<"FILE OPEN ERROR ";getch();
return;
}
cout<<"ENTER THE ACCOUNT NUMBER ";
cin>>mrno;
while(fout.read((char*)&obj_4,recsize))
{
if (obj_4.giveaccountno()==mrno)
{
obj_4.dispdata();
cout<<"Press any key.....";
flag=1;break;
}
}
if(flag==0)
{
cout<<"NO SUCH ACCOUNT EXIST ";
cout<<"Press any key......";
}
getch();
fout.close();
}
void delrecord()
{
account obj_5;
fstream fout,temp;
int mrno,flag;
int recsize=sizeof(account);
system("cls");
cout<<"CLOSE ACCOUNT MENU";
fout.open("banking.txt",ios::in);
if(!fout)
{
cout<<"FILE OPEN ERROR ";
getch();
return;
}
temp.open("temp.txt",ios::app|ios::binary);
if(!temp)
{
cout<<"FILE OPEN ERROR ";
getch();
return;
}
cout<<"ENTER THE ACCOUNT NUMBER ";
cin>>mrno;
while(fout.read((char*)&obj_5,recsize))
{
if(obj_5.giveaccountno()==mrno)
{
obj_5.dispdata();
char confirm;
cout<<"ARE YOU SURE TO DELETE IT(Y/N)..";
cin>>confirm;
if(confirm=='Y'||confirm=='y')
{
fout.read((char*)&obj_5,recsize);
cout<<"RECORD DELETED FORM DATABASE";
cout<<"press any key....";
flag=1;
if(!fout)
break;
}
flag=1;
}
temp.write((char*)&obj_5,recsize);
}
fout.close();
temp.close();
remove("banking.txt");
rename("temp.txt","banking.txt");
if(flag==0)
{
cout<<"NO SUCH ACCOUNT EXIST";
cout<<"Press any key.....";
}
getch();
}
void modrecord()
{
account obj_6;
fstream fout;
int mrno,flag=0;
int recsize=sizeof(account);
system("cls");
cout<<"MODIFY RECORD MENU";
fout.open("banking.txt",ios::in|ios::out|ios::binary);
if(!fout)
{
cout<<"FILE OPEN ERROR ";
getch();
return;
}
fout.seekg(ios::beg);
cout<<"ENTER RECORD NUMBER ";
cin>>mrno;
while(fout.read((char*)&obj_6,recsize);
{
if(obj_6.giveaccountno()==mrno)
{
system("cls");
cout<<"MODIFY MENU";
obj_6.dispdata();
int tmprno=obj_6.giveaccountno()-1;
account obj_7;
cout<<"ENTER NEW DATA";
obj_7.getdata(tmprno);
char confirm;
cout<<"ARE YOU SURE(Y/N)";
cin>>confirm;
if(confirm=='Y'||confirm=='y')
{
fout.seekg(-1*recsize,ios::cur);
fout.write((char*)&obj_7,recsize);
cout<<"RECORD MODIFIED";
cout<<"Press any key.....";
flag=1;
}
}
if(flag==0)
{
cout<<"NO SUCH RECORD EXIST";
cout<<"Press any key.....";
}
}
fout.close();
getch();
}
void withdraw()
{
account obj_9;
fstream fout;
int mrno=0;
int recsize=sizeof(account);
system("cls");
cout<<"WITHDRAWL MENU";
fout.open("banking.txt",ios::in|ios::out|ios::binary);
if(!fout)
{
cout<<"FILE OPEN ERROR ";getch();return;}
fout.seekg(ios::beg);
cout<<"ENTER ACCOUNT NUMBER ";
cin>>mrno;
while(fout.read((char*)&obj_9,recsize))
{
if(obj_9.giveaccountno()==mrno)
{
system("cls");
cout<<"ENTER THE AMOUNT TO BE WITHDRAWED::Rs ";
cin>>w;
obj_9.withdrawal(w);
fout.seekg(-1*recsize,ios::cur);
fout.write((char*)&obj_9,recsize);
}
}
fout.close();
getch();
}
void punit(void)
{
int gd=5, gm, errorcode;
int col,i=0,j;
}
void deposit(void)
{
account obj_10;
fstream fout;
int mrno=0;
int recsize=sizeof(account);
system("cls");
cout<<"DEPOSITAL MENU";
fout.open("banking.txt",ios::in|ios::out|ios::binary);
if(!fout)
{
cout<<"FILE OPEN ERROR ";getch();return;
}
fout.seekg(ios::beg);
cout<<"ENTER ACCOUNT NUMBER ";
cin>>mrno;
while(fout.read((char*)&obj_10,recsize))
{
if(obj_10.giveaccountno()==mrno)
{
system("cls");
cout<<"Enter the Amount to be Deposted ::Rs ";
cin>>w;
obj_10.deposital(w);
fout.seekg(-1*recsize,ios::cur);
fout.write((char*)&obj_10,recsize);
}
}
}




zubairsaif

Zubair saif

A passionate writer who loves to write on new technology and programming

Post A Comment:

0 comments: