Anda di halaman 1dari 29

ATM BANKING IN C ++

2010-11

1. INTRODUCTION
An Automated Teller Machine (ATM) allows customers to perform banking transactions anywhere and at anytime without the need of human teller. By using a debit or ATM card at an ATM, individuals can withdraw cash from checking or savings accounts, make a deposit or transfer money from one account to another or perform other functions. You can also get cash advances using a credit card at an ATM. Individuals should be aware that many banks charge transaction fees generally ranging from Rs 50150 per transaction - for using another banks ATM.

1.1 OBJECTIVES
An automatic teller machine or ATM allows a bank customer to conduct their banking transactions from almost every other ATM machine in the world. Don Wetzel was the co-patentee and chief conceptualist of the automated teller machine, an idea he said he thought of while waiting in line at a Dallas bank. The first ATMs were off-line machines, meaning money was not automatically withdrawn from an account. The bank accounts were not (at that time) connected by a computer network to the ATM. Therefore, banks were at first very exclusive about who they gave ATM privileges to. Giving them only to credit card holders (credit cards were used before ATM cards) with good banking records. Wetzel, Barnes and Chastain developed the first real ATM cards, cards with a magnetic strip and a personal ID number to get cash. ATM cards had to be different from credit cards (then without magnetic strips) so account information could be included.

1.2 SCOPE
SJBIT/ISE/2012 Page 1

ATM BANKING IN C ++

2010-11

The ATM is online with the bank, that is, each transaction will be authorized by the bank on-demand and directly debited from the account's owner. The ATM works as follows. First, the client will insert his/her client card in the ATM and then the ATM will ask for a Personal Identification Number (PIN) , if the number is entered incorrectly several times in a row, most ATMs will retain the card as a security precaution to prevent an unauthorized user from working out the PIN by pure guesswork. Once the correct PIN is given, the ATM will ask for the amount of money to be withdrawn. If the amount is available and if the client has enough money on his credit then the said amount of money will be paid. Whether the amount of money is payable or not, that is, the ATM has enough cash but could be the case the ATM has no change for that amount, will be also checked. Once the money is offered to the client a countdown is started, that is . the client has a determined amount of time to pick up the money. If this timeout is over, the money will be collected by the ATM and the transaction will be rolled back. The class Card_input has the methods for reading the code of the client's card and for ejecting the card from the ATM. The class Card_input will interact through the Controller with the class Terminal, where the methods Req_PIN and Req_amount are defined, in order to get the PIN of the user and to verify if the given PIN is correct or not. The class Card will have the information of the cardholder, that is, the Card_number, PIN, and Account_number.

1.3 WHY GO FOR ATM?


An automatic teller machine increases existing business. The typical ATM customer will spend 20-25% more than a non-ATM customer, according to research conducted by AT&T Global Information Solutions. An automatic teller machine generates new business. Customers are more likely to seek out a location with an automatic teller machine; in addition to convenience, there are a number of safety benefits associated with an in-store automatic teller machine, according to survey results published in Petroleum Marketer magazine. An automatic teller machine provides additional revenue streams. Each ATM withdrawal transaction generates surcharge ("convenience fee") income for the owner of the automatic teller machine. Additionally, an automatic teller machine can provide revenue from on-screen advertising, couponing, and alternative media (e.g., prepaid phone-cards, postage stamps) dispensing opportunities. SJBIT/ISE/2012 Page 2

ATM BANKING IN C ++

2010-11

An automatic teller machine reduces risk and lowers costs. Having an automatic teller machine on the premises can reduce the number of bad checks and cut credit card expenses because customers have the option of withdrawing cash instead. An automated teller machine or automatic teller machine (ATM), also known as a Cashpoint (which is a trademark of Lloyds TSB), cash machine or sometimes a hole in the wall in British English, is a computerised telecommunications device that provides the clients of a financial institution with access to financial transactions in a public space without the need for a cashier, human clerk or bank teller. ATMs are known by various other names including ATM machine, automated banking machine, and various regional variants derived from trademarks on ATM systems held by particular banks. Using an ATM, customers can access their bank accounts in order to make cash withdrawals, credit card cash advances, and check their account balances as well as purchase prepaid cellphone credit. If the currency being withdrawn from the ATM is different from that which the bank account is denominated in (e.g.: Withdrawing Japanese Yen from a bank account containing US Dollars), the money will be converted at a wholesale exchange rate. Thus, ATMs often provide the best possible exchange rate for foreign travelers and are heavily used for this purpose as well.

2. LITERATURE SURVEY
2.1 HISTORY OF ATM
SJBIT/ISE/2012 Page 3

ATM BANKING IN C ++

2010-11

Invented by John Shepherd-Barron the first ATM was introduced in June 1967 at Barclays Bank in Enfield, UK. On most modern ATMs, the customer is identified by inserting a plastic ATM card with a magnetic stripe or a plastic smart card with a chip, that contains a unique card number and some security information such as an expiration date or CVVC (CVV). Authentication is provided by the customer entering a personal identification number(PIN). A first cash dispensing device was used in Tokyo in 1966. Although little is known of this first device, it seems to have been activated with a credit card rather than accessing current account balances. It was followed in 1967 by a machine in Uppsala. In simultaneous and independent efforts, engineers in Sweden and Britain developed their own cash machines during the early 1960s. The first of these that was put into use was by Barclays Bank, in Enfield Town in North London, United Kingdom on 27 June 1967. This machine was the first in the UK and was used by English comedy actor Reg Varney at the time so as to ensure maximum publicity for the machines that were to become mainstream in the UK. This instance of the invention has been credited to John ShepherdBarron of printing firm De La Rue who was awarded an OBE in the 2005 New Years Honours List. His design used special cheques that were matched with a personal identification number, as plastic bank cards had not yet been invented. The Barclays-De La Rue machine (called De La Rue Automatic Cash System or DACS beat the Swedish Savings Bank and a company called Metior's machine (a device called Bankomat) by nine days and Westminster Banks-Smith Industries-Chubb system (called Chubb MD2) by a month. The collaboration of a small start-up called Speytec and Midland Bank developed a third machine which was marketed after 1969 in Europe and the USA by the Burroughs Corporation. The patent for this device (GB1329964) was filed on September 1969 (and granted in 1973) by John David Edwards, Leonard Perkins, John Henry Donald, Peter Lee Chappell, Sean Benjamin Newcombe & Malcom David Roe.

2.2 PROPOSED SYSTEM


Instead of just a money disposal machine, in our system , the user inserts an ATM card instead of a credit card that was used previously, now this has the users account number SJBIT/ISE/2012 Page 4

ATM BANKING IN C ++

2010-11

and the ATM card number ,checks account number and password. Password or a PIN(personal identification number) is given to every user which is always a 4 digit number and if the PIN is wrong, again the system gives option to the user to try again or to exit. If the account number and password matches , system asks for transaction 1) Deposit 2) Withdraw 3) Detail 4) Exit If deposit or withdrawn then ask for amount then display the remaining balance. If Detail then display last ten transactions . If exit then display Thank you , visit again. After deposit or withdrawn or mini statement ask user for further transaction. If yes then come back to Transaction screen. If no then it should display Thank you , visit again. At the end of all transactions close account ledger file and close the graphics mode.

3. SOFTWARE REQIUREMENT SPECIFICATION

SJBIT/ISE/2012

Page 5

ATM BANKING IN C ++

2010-11

A software requirement specification (SRS) is a comprehensive description of the intended purpose and environment for software under development. The SRS fully describes what the software will do and how it will be expected to perform. An SRS minimizes time and effort required by the developers to achieve desired goals and also minimizes the development cost. A good SRS defines how an application will interact with the system hardware , other programs and human users in a wide variety of real world situations. Parameters such as operating speed , response time, availability, portability, maintainability, foot print , security and speed of recovery from adverse events and evaluated.

3.1 USER REQUIREMENTS


The design of a user interface affects the amount of effort the user must expend to provide input for the system and to interpret the output of the system and how much effort it takes to learn how to do this. Usability is a degree to which the design of a particular user interface takes into account the psychology.

3.4 SYSTEM REQUIREMENTS 3.4.2SOFTWARE REQUIREMENTS


LANGUAGE-C++ OPERATING SYSTEM-DOS/WINDOWS.

3.4.1 HARDWARE REQUIREMENTS


PROCESSOR-PENTIUM 4 PROCESSOR SPEED-600MHz MONITOR SIZE-15SVGA RAM-128MB HDD-20GB CACHE-512KB LEVEL 2 CACHE UPS-0.5KV

SJBIT/ISE/2012

Page 6

ATM BANKING IN C ++

2010-11

3.2 FUNCTIONAL REQUIREMENTS


1. An ATM machine accepts a card from a user. 2. The user inputs a Personal Identification Number (PIN) to authenticate the users identity. 3. The system validates the card and the PIN, then either continues processing or rejects the card. 4. The ATM prompts the validated user for the type of transaction; valid transaction types are as follows: Check account balance Process a deposit Process a withdrawal for an ATM customer Process a cash advance for a credit card holder Transfer funds Pay bills

5. The ATM communicates the request to the appropriate financial system 6. The appropriate financial system responds with permission or denial of the request. 7. The ATM asks the user if they want a printed receipt. 8. The ATM acts on the request according to the response received from the financial system. Possible actions for granted requests include the following: reject the request accept a deposit dispense cash display or print an account balance pay a bill perform an Electronic Funds Transfer (EFT)

9. The system updates the banks financial system for ATM transactions or sends an EFT to the appropriate financial institution for credit card transactions. 10. The ATM prints a receipt if one is requested. 11. The system prompts the user for another transaction and repeats steps 4 10 if yes. 12. The ATM closes the session and waits for another user when done.

SJBIT/ISE/2012

Page 7

ATM BANKING IN C ++ Data Constraints 1. PINs are four digits in length. 2. Account numbers are contained on the cards used to gain access. 3. Card readers must read embossed characters and magnetic information.

2010-11

4. The ATM system must format transactions in Electronic Data Interchange format for transmission to other financial institutions. 5. Non-sufficient funds in an account should cause the rejection of a withdrawal request or cash advance transaction. 6. ATM cards may link to more than one account. 7. PINs and account numbers are issued by the appropriate financial institutions.

3.3 NON-FUNCTIONAL REQUIREMENTS


Non-functional requirements which impose constraints on the design or implementation such as performance, engineering requirements, quality standards, design constraints. 1) Availability -System will be available around the clock except for the time required for the backup data. 2) Reliability- Reliability of a software system is defined as the ability of the system to behave consistently in a user acceptable manner when operating within the environment for which it was intended. Reliability can be defined in terms of an availability percentage (say, 99.999%).For a telephone device, it might mean that the telephone should break down, on average, <1week per year. For a patient monitoring system, it may mean that the system may fail <1hr/year.But note the different risks involved.. 3) Security - Permissible access to data and operations. 4) Dependability- A dependable software should not cause any physical or economic damage in the event of system failure. 5) Efficiency- Software should not make wasteful use of system resources such as memory and processing cycles. So efficiency includes responsiveness, processing time, memory utilization and many more. 6) Usability- Software should have an appropriate user interface and adequate documentation.

SJBIT/ISE/2012

Page 8

ATM BANKING IN C ++

2010-11

4. SYSTEM DESIGN
System design is a process through which requirements are translated into representation of software. Initially the representation depicts a holistic view of the software. Subsequent refinement leads to a design representation that is very close to source code. Design provides us with representation of software development. Design is the only phase where user requirements are accurately translated into finished software product or system. System design refers to modeling of a process. It is an approach to create a new system. It can be defined as a transition from users view to programmers view. The system design phase acts as a bridge between the required specification and the implementation phase.

4.1 Data flow diagrams


It was first developed by Larry Constantine as a way of expressing system requirements in a graphical form and this led to modular design. A data flow diagram, also known as Bubble Chart has the purpose of clarifying system requirements and identifying major transactions that will become programs in system design. A data flow diagram consists of series of squares joined by lines. The squares represent the data transformations and the lines represent data flows in the system. Rectangle - Source (originator) or designation of system data. Arrow Identifies data flow that is data in motion. Circle Represents a process that transforms incoming data flows into outgoing data flows. Open rectangle Data store, data at rest or a temporary repository of data.

SJBIT/ISE/2012

Page 9

ATM BANKING IN C ++

2010-11

1) Receiving customer details and verifying the account number.

The above figure verifies the account details, receives the customer details and also makes changes if required and stores them. 2) Bank Balance

SJBIT/ISE/2012

Page 10

ATM BANKING IN C ++

2010-11

The above diagram collects all the customer details , displays the customer details and displays the total amount in rupees of the user.

4) Add deposit.

The above figure shows, if the user wants to credit some amount to his account his current balance is added with the amount that is to be deposited. 5) Account view.

SJBIT/ISE/2012

Page 11

ATM BANKING IN C ++

2010-11

The above figure just gives a detailed representation of customer details. 6) Withdraw Cash

5. IMPLEMENTATION
/* welcome.h */ void welcome() { int gd=DETECT,gm; initgraph(&gd,&gm,"c:\\tc\\bgi\\"); char wel[]="WELCOME"; int xmax, ymax; xmax=getmaxx(); ymax=getmaxy(); setfillstyle(7,9); bar(20,20,xmax-20,ymax-20); rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); setcolor(15); settextstyle(6,0,4); outtextxy(275,225,wel); SJBIT/ISE/2012 Page 12

ATM BANKING IN C ++ getch(); input(); closegraph(); restorecrtmode(); } /* comparis.cpp*/ void pss_wron(int); void trans(int); void comparis(int unm,int pwd) { char note[]="FAILURE"; int n,w=0,a,p,i; ifstream fin; int flag=0; fin.open("n1.txt",ios::in); if(!fin) { outtextxy(300,300,note); getch(); } else { do { fin>>n; if(unm==n) { fin>>p; if(pwd==p) { flag=1; fin.close(); break; } else {w=1; fin.close(); pss_wron(w); break; } } else { for(i=0;i<42;i++) fin>>a; } }while(fin); } if(flag==1) { fin.close(); trans(unm);} else if(w!=1) { w=0; fin.close(); pss_wron(w); } } SJBIT/ISE/2012

2010-11

Page 13

ATM BANKING IN C ++ /* convert.cpp*/ void convert(long no, char *a) { int i,j,c[10]; long b=no; int k; for(i=0;b!=0;i++) { c[i]=b%10; b /=10; } for(j=i-1,k=0;j>=0;j--,k++) { switch(c[j]) { case(1): a[k]='1';break; case(2): a[k]='2';break; case(3): a[k]='3';break; case(4): a[k]='4';break; case(5): a[k]='5';break; case(6): a[k]='6';break; case(7): a[k]='7';break; case(8): a[k]='8';break; case(9): a[k]='9';break; case(0): a[k]='0';break; } } a[k]='\0'; } /* input.cpp*/ int swtchcmp(char *ch); void comparis(int,int); input() { cleardevice(); char name[6]; char psswd[6]; int nm,pd; char ch[2]; int i,a=0; int xmax, ymax; xmax=getmaxx(); ymax=getmaxy(); setfillstyle(7,9); bar(20,20,xmax-20,ymax-20); SJBIT/ISE/2012

2010-11

Page 14

ATM BANKING IN C ++ rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); outtextxy(120,120,"Enter the user-name:"); name[0]=getch(); for(i=1;name[i-1]!='\r';i++) { ch[0]=name[i-1]; ch[1]='\0'; outtextxy(400+a,120,ch); name[i]=getch(); a=a+15; } name[i-1]='\0'; outtextxy(120,180,"Enter the password:"); a=0; psswd[0]=getch(); for(i=1;psswd[i-1]!='\r';i++) { ch[0]='*'; ch[1]='\0'; outtextxy(400+a,190,ch); psswd[i]=getch(); a=a+15; } psswd[i-1]='\0'; nm=swtchcmp(name); pd=swtchcmp(psswd); comparis(nm,pd); return 0; } /* minist.cpp*/ void names(int); void minist(int unm) { int ans; int xmax,ymax; xmax = getmaxx(); ymax = getmaxy(); cleardevice(); setcolor(15); setfillstyle(7,9); bar(20,20,xmax-20,ymax-20); rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); ifstream fin; fin.open("n1.txt",ios::in); long st[42]; SJBIT/ISE/2012

2010-11

Page 15

ATM BANKING IN C ++ char str[10]; int n,m,p; long a; long b,bal=0; int i=0,j,l=0; do { fin>>n; if(unm==n) { st[l++]=(long)n; fin>>a; fin>>b; st[l++]=b; bal +=b; for(j=0;j<10;j++) for(i=0;i<4;i++) { fin>>a; st[l++]=a; if(i==3) bal += a; } } else { for(i=0;i<42;i++) fin>>a; } }while(fin); fin.close(); int y=0; convert(st[0],str); outtextxy(40,40,"Account No:"); outtextxy(200,40,str); outtextxy(400,40,"Name:sandy"); names(unm); outtextxy(40,80,"DATE"); outtextxy(200,80,"CREDIT/DEBIT"); outtextxy(400,80,"AMOUNT in Rs"); l=2; for(i=2, j=1;l<42;i++, j++) { for(int k=0, m=0, p=15;k<3;k++,m=m+30,p=p+30) { convert(st[l++],str); outtextxy(40+m,120+y,str); if(k!=2) outtextxy(40+p,120+y,"/"); } SJBIT/ISE/2012

2010-11

Page 16

ATM BANKING IN C ++ if(st[l]<0) { outtextxy(200,120+y,"DEBIT"); st[l] *= -1; } else outtextxy(200,120+y,"CREDIT"); convert(st[l++],str); outtextxy(400,120+y,str); y+=20; } outtextxy(40,120+y+50,"Your Balance is:Rs"); convert(bal,str); outtextxy(400,115+y+50,str); getch(); ans=anymore(); if(ans==1) trans(unm); else exitscr(); } void names(int unm) { switch(unm) { case 1000: outtextxy(450,40,"Anil Ambani"); break; case 2000: outtextxy(450,40,"Azim Premji"); break; case 3000: outtextxy(450,40,"Mammootty"); break; case 4000: outtextxy(450,40,"Narayan Moorthy"); break; case 5000: outtextxy(450,40,"Ratan Tata"); break; case 6000: outtextxy(450,40,"Sachin Tendulkar"); break; case 7000: outtextxy(450,40,"Zaheer Khan"); break; case 8000: outtextxy(450,40,"Amitabh Bachchan"); break; case 9000: outtextxy(450,40,"Bill Gates"); break; case 10000: outtextxy(450,40,"Aditya Birla"); break; } /* mod.cpp*/ long mod(int money,int unm) { int i,n,m; long a,b, bal=0; struct date d; getdate(&d); ifstream fin; ofstream fout; fin.open("n1.txt",ios::in); fout.open("n2.txt",ios::out); int count=0; SJBIT/ISE/2012

2010-11

Page 17

ATM BANKING IN C ++ do { fin>>n; fout<<n<<"\t"; if(unm==n) { fin>>a; fout<<a<<"\t"; fin>>b; for(i=0;i<4;i++) { fin>>a; if(i==3) { b = b+a; bal=b; fout<<b<<"\t"; } } for(int j=0;j<9;j++) for(i=0;i<4;i++) { fin>>a; fout<<a<<"\t"; if(i==3) bal += a; } fout<<(int)d.da_day<<"\t"; fout<<(int)d.da_mon<<"\t"; fout<<d.da_year<<"\t"; fout<<money<<"\n"; bal += money; } else { for(i=0;i<42;i++) { fin>>a; fout<<a<<"\t"; } fout<<"\n"; } count++; if(count==10) break; }while(fin); cout<<endl; fin.close(); fout.close(); SJBIT/ISE/2012

2010-11

Page 18

ATM BANKING IN C ++

2010-11

fin.open("n2.txt",ios::in); fout.open("n1.txt",ios::out); int k=0; do { k++; fin>>a; fout<<a<<"\t"; if(k%43==0) fout<<"\n"; }while(fin); getch(); fin.close(); fout.close(); return bal; } /* pss_wron.cpp*/ void pss_wron(int choice) { cleardevice(); void exitscr(); char c; int xmax, ymax; xmax=getmaxx(); ymax=getmaxy(); setcolor(15); setfillstyle(7,9); bar(20,20,xmax-20,ymax-20); rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); if(choice==0) outtextxy(120,120,"The username does not exist!!"); else if(choice==1) outtextxy(120,120,"The password entered is wrong!!"); outtextxy(120,240,"1.Try Again"); outtextxy(120,300,"2.Exit"); c=getch(); if(c=='1') input(); else exitscr(); } /* swtchcmp.cpp*/ int swtchcmp(char ch[6]) { SJBIT/ISE/2012 Page 19

ATM BANKING IN C ++ int i,num,art; int x=1; int len; num=0; for(i=0;ch[i]!='\0';i++); len=i-1; for(i=len;i>=0;i--) { switch(ch[i]) { case '0': art=0; break; case '1': art=1; break; case '2': art=2; break; case '3': art=3; break; case '4': art=4; break; case '5': art=5; break; case '6': art=6; break; case '7': art=7; break; case '8': art=8; break; case '9': art=9; break; } num=num+art*x; x=10*x; } return num; } /* trans.cpp*/ void with_dep(int,int); void minist(int); void exitscr(); void trans(int unm) { char ch; int xmax,ymax; cleardevice(); xmax=getmaxx(); ymax=getmaxy(); setcolor(WHITE); setfillstyle(7,9); rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); //setcolor(MAGENTA); rectangle(100,100,190,130); outtextxy(105,115,"1.WITHDRAW"); rectangle(400,100,490,130); outtextxy(405,115,"2.DEPOSIT"); rectangle(100,400,190,430); outtextxy(105,415,"3.DETAILS"); rectangle(400,400,490,430); SJBIT/ISE/2012

2010-11

Page 20

ATM BANKING IN C ++ outtextxy(405,415,"4.EXIT"); ch=getch(); switch(ch) { case '1': with_dep(unm,1); break; case '2': with_dep(unm,2); break; case '3': minist(unm); break; case '4': exitscr(); break; } } /* with_dep.cpp*/ void convert(long,char *); long mod(int, int); int anymore(); void with_dep(int unm,int N) { long bal; char balance[10]; cleardevice(); int ymax,xmax; int a=0; int ans; char cash[6],ch[2]; int money; xmax=getmaxx(); ymax=getmaxy(); setcolor(15); setfillstyle(7,9); bar(20,20,xmax-20,ymax-20); rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); if(N==1) outtextxy(90,100,"Enter the amount to be withdrawn:" ); else if(N==2) outtextxy(90,100,"Enter the amount to be deposited:" ); cash[0]=getch(); int i; for(i=1;cash[i-1]!='\r';i++) { ch[0]=cash[i-1]; ch[1]='\0'; outtextxy(300+a,200,ch); cash[i]=getch(); a=a+15; } cash[i-1]='\0'; SJBIT/ISE/2012

2010-11

Page 21

ATM BANKING IN C ++ money=swtchcmp(cash); if(N==1) money*=-1; bal=mod(money,unm); convert(bal,balance); outtextxy(120,250,"Your Balance is:"); outtextxy(250,250,balance); getch(); /*display the balance here*/ ans=anymore(); if(ans==1) trans(unm); else exitscr(); } /* anymore.cpp*/ int anymore() { cleardevice(); int xmax,ymax; char reply; char ch[2]; xmax=getmaxx(); ymax=getmaxy(); setcolor(15); setfillstyle(7,9); bar(20,20,xmax-20,ymax-20); rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); outtextxy(30,30,"Do you want to do any further transactions?: "); reply=getch(); ch[0]=reply; ch[1]='\0'; outtextxy(500,150,ch); getch(); if((reply=='y')||(reply=='Y')) return 1; else return 0; } /* exitscr.cpp*/ void exitscr() { SJBIT/ISE/2012

2010-11

Page 22

ATM BANKING IN C ++ cleardevice(); int ymax,xmax; xmax=getmaxx(); ymax=getmaxy(); setcolor(15); setfillstyle(7,9); bar(20,20,xmax-20,ymax-20); rectangle(20,20,xmax-20,ymax-20); floodfill(21,21,WHITE); outtextxy(200,200,"Thank You!"); outtextxy(200,250,"Visit Again!!!"); getch();}

2010-11

TABLE DEFINING FILES.

SJBIT/ISE/2012

Page 23

ATM BANKING IN C ++

2010-11

NAME OF FILE MAIN WELCOME INPUT SWITCHCMP COMPARIS PSS_WRON TRANS

DESCRIPTION ALL THE HEADER FILES AND OTHER PROGRAM FILES ARE INCLUDED IN THIS FILE AND THE CONTROL IS TRANSFERRED TO WELCOME WELCOME SCREEN IS DISPLAYED AND CONTROL IS TRANSFERRED TO INPUT. ASK USER FOR USER NAME AND PASSWORD. CONTROL IS TRANSFERRED TO SWITCHCMP AND COMPARIS. CONVERTS THE CHARACTERS TO INTEGER AND RETURNS INTEGER TO INPUT. COMPARES THE USERNAME AND PASSWORD WITH THE DETAILS ENTERED IN THE DATA FILE. IF IT DOES NOT MATCH, THEN CONTROL IS GIVEN TO PSS_WRON ELSE TO TRANS THIS WILL GIVE THE USER OPTIONS FOR TRY AGAIN OR EXIT. IF TRY AGAIN CONTROL GOES TO INPUT ELSE GOES TO EXITSCR. THIS WILL ASK USERS CHOICE FOR DEPOSIT, WITHDRAW, DETAILS AND EXIT. IF DEPOSIT OR WITHDRAW CONTROL GOES TO WITH_DEP. IF DETAILS CONTROL IS GIVEN TO MINIST AND IF EXIT CONTROL GOES TO EXITSCR. IT WILL ASK THE USER FOR THE AMOUNT TO DEPOSITED OR WITHDRAWN. CONTROL IS TRANSFERRED TO CONVERT AND MOD. THEN DISPLAYS THE FINAL BALANCE. CONTROL IS THEN TRANSFERRED TO ANYMORE. THIS FILE DISPLAYS THE LAST TEN TRANSACTIONS AND BALANCE. CONTROL IS TRANSFERRED TO CONVERT AND ANYMORE. THIS CONVERTS THE INTEGER VALUES TO CHARACTERS AND RETURN VALUE TO THE CALLING FUNCTION. THIS FUNCTION MODIFIES THE VALUES IN DATA FILES. THIS WILL DELETE THE FIRST TRANSACTION AND ADD THE LATEST TO THE LIST. ALSO MODIFIES THE BALANCE. CONTROL IS GIVEN BACK TO CALLING FUNCTION. THIS GIVES THE USER AN OPTION FOR ANY MORE TRANSACTION. IF YES, CONTROL GOES TO TRANS ELSE IT WILL GO TO EXITSCR. THIS WILL DISPLAY A SCREEN THANK YOU, VISIT AGAIN!

WITH_DEP

MINIST CONVERT

MOD

ANYMORE

EXITSCR

6. RESULTS AND DISCUSSIONS


SJBIT/ISE/2012 Page 24

ATM BANKING IN C ++

2010-11

6.1 Snapshots
FIG 1:-WELCOME SCREEN.

FIG 2:-AUTHENTICATING THE USER

FIG 3:- USERNAME FAIL

SJBIT/ISE/2012

Page 25

ATM BANKING IN C ++

2010-11

FIG 4:-TRANSACTION SCREEN

SJBIT/ISE/2012

Page 26

ATM BANKING IN C ++ FIG 6 :-ANY FURTHER TRANSACTION

2010-11

FIG 7 : DEPOSIT

SJBIT/ISE/2012

Page 27

ATM BANKING IN C ++ FIG 8:-MINI STATEMENT

2010-11

FIG 9:-EXIT SCREEN

CONCLUSION
SJBIT/ISE/2012 Page 28

ATM BANKING IN C ++

2010-11

Based studies on the ATM we hereby conclude that ATM is the easiest way of depositing and withdrawing money. Transaction is possible any time, thats why in India some people call ATM as all time money. If ATM machines are connected to internet then its possible to do transaction from any where, 24 hours a days and 365 days a year. With the security of ATM improving it has now become a safe mode of transaction. Hence it can be concluded that ATM is safe, fast, reliable, convenient, excisable and any time money machine. In future the facilities that can be added to ATM machines are: Filling of bills. Daily news headline. Check matches score or sensex ups and downs.

BIBLIOGRAPHY
1. 2. 3. ROBERT LAFORE - TURBO C++, Galgotia Publications Pvt Ltd, New Delhi BALGURUSWAMY - Programming In C, Tata McGraw-Hill Publishing SOURAV SAHAY - Object Oriented Programming with C++, Oxford University

company, New Delhi. Press, New Delhi.

SJBIT/ISE/2012

Page 29

Anda mungkin juga menyukai