Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Mr. Abhishek Gupta Abhiraj Malik 1702517 CSE - 5 (A1)

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 40

A PROJECT REPORT

ON

“Atm Service”

Submitted to Punjab Technical University, Jalandhar in partial fulfillment of

Requirements for the Degree of B-Tech

In

COMPUTER SCIENCE AND ENGINEEING

(2017 - 2021)

CHANDIGARH GROUP OF COLLEGES, LANDRAN, MOHALI

PROJECT GUIDE: SUBMITTED BY:

Mr. Abhishek Gupta Abhiraj Malik

1702517

CSE –5 (A1)
ACKNOWLEDGMENT

In accomplishment of this project I would like add a few words of appreciation


for the people who have guided and assisted me in getting this outcome.

I owe my profound gratitude to my project guide Mr. Abhishek Gupta , who took
keen interest in my project and guided me all along, till the completion of the
project work by providing all the necessary information for development of this
game. His constant suggestions for improvements made my work easier and
proficient. . I would also like to thank H.O.D Dr. Manish Mahajan for the whole
hearted support.

I am thankful to and fortunate enough to get constant encouragement, support


and guidance from all Teaching staffs of [CSE Department] which helped me in
successfully completing my project work .
ATM SERVICE

Nowadays everyone is very busy in their work. So they feel that job must be easier so this
system is used to reduce their work. Instead of keeping a lot of papers into a record or file
and it may be missed somewhere so, this system help to keep the record of the customer,
also keeps the record of the customer and also easy to access.

1. INTRODUCTION:
 Automated Teller Machine(ATM) enables the client of a bank to have access to
their account without going to the bank.
 User who uses this product will be able to see all the information and services
provided by ATM.
 Product provides services like creating account, cash deposit, cash withdrawal,
cash deposit, delete account etc.
 The program is designed in such a way that the user has to enter account and pin
number. Once verified he/she had to enter the options provided in the menu.

2. OBJECTIVE:
 Our main objective is to speed up the transactions done by customer. No manual
transactions need generally.
 Second objective is to save time which is most important nowadays.
 To render accurate services to customer.
 The reduction of fraudulent activities.
 To achieve speedy processing of customer data.
 To reduce error processing, the guarantee of increase security.
 Reduce paperwork.

3. TECHNOLOGY USED:
 C/C++.
4. SOFTWARE USED:
 Code Blocks.

5. ADVANTAGES:
 The cost of converting from manual system to computerized system is not
probably more. For construction of the new system no extra resources are
required, only the software requirement is there.
 This system is user friendly and flexible, so we can say that service is socially
feasible.
 Less effort to complete transaction.
 Less time required.
 No need to maintain the bulk of papers.
 Easy to operate.

6. DFD DIAGRAM:

MEMBER BANKS
Transaction request

Display USER

Balance information

User request

ATM
Information request

Receipt

ACCOUNT PRINTER
DATABASE
Account data

7. FEATURES OF O.S

This projectwork is done on the windows 7 professional, which is the operating system. An
operating system is a set of software tools designed to make it easy for people or
programmers to make optimum use of the computer. People who use computers have
different levels of needs and interest. These peoples can be separated can be two groups,
users and programmers. The user wants a convenient set of commands to manage files of

data or programs, copy and run application package while a programmer used as a set of tools
that can be held together and debug programs.

No matter where you are working, your computer will be easier to use and manage, because
Microsoft Windows 2000 Professional is more compatible and more powerful than any
workstation you’ve used before. The main features of Windows 2000 Professional operating
system are

 Easier to use.
 Easier to manage
 More compatible
 More powerful

8. Software Development Life Cycle:

The systems development life cycle (SDLC), or software development process in systems
engineering, information systems and software engineering, is a process of creating or
altering information systems, and the models and methodologies that people use to develop
these systems. In software engineering, the SDLC concept underpins many kinds of software
development methodologies. These methodologies form the framework for planning and
controlling the creation of an information system: the software development process
A Systems Development Life Cycle (SDLC) adheres to important phases that are essential for
developers, such as planning, analysis, design, and implementation, and are explained in the
section below.It include evaluation of present system, information gathering, feasibility study
and request approval. A number of system development life cycle (SDLC) models have been
created: waterfall, fountain, spiral, build and fix, rapid prototyping, incremental, and
synchronize and stabilize. The oldest of these, and the best known, is the waterfall model: a
sequence of stages in which the output of each stage becomes the input for the next. These
stages can be characterized and divided up in different ways, including the following:

 Systems analysis, requirements definition: Defines project goals into defined functions
and operation of the intended application. Analyzes end-user information needs.

 Systems design: Describes desired features and operations in detail, including screen
layouts, business rules, process diagrams, pseudocode and other documentation.
 Development: The real code is written here.

 Integration and testing: Brings all the pieces together into a special testing environment,
then checks for errors, bugs and interoperability.

 Acceptance, installation, deployment: The final stage of initial development, where the
software is put into production and runs actual business.

 Maintenance: What happens during the rest of the software's life: changes, correction,
additions, moves to a different computing platform and more. This is often the longest of
the stages.

10.Module Design:

 Create account.
 Withdraw.
 Deposit.

11. Testing:
Software Testing is the process of executing software in a controlled manner, in order to
answer the question - Does the software behave as specified?. Software testing is often used
in association with the terms verification and validation. Validation is the checking or testing
of items, includes software, for conformance and consistency with an associated specification.
Software testing is just one kind of verification, which also uses techniques such as reviews,
analysis, inspections, and walkthroughs. Validation is the process of checking that what
has been specified is what the user actually wanted.

Validation : Are we doing the right job?

Verification : Are we doing the job right?

Software testing should not be confused with debugging. Debugging is the process of
analyzing and localizing bugs when software does not behave as expected. Although the
identification of some bugs will be obvious from playing with the software, a methodical
approach to software testing is a much more thorough means for identifying bugs. Debugging
is therefore an activity which supports testing, but cannot replace testing.

Other activities which are often associated with software testing are static analysis and
dynamic analysis. Static analysis investigates the source code of software, looking for problems
and gathering metrics without actually executing the code. Dynamic analysis

looks at the behavior of software while it is executing, to provide information such as


execution traces, timing profiles, and test coverage information.

Testing is a set of activity that can be planned in advanced and conducted systematically.
Testing begins at the module level and work towards the integration of entire computers
based system. Nothing is complete without testing, as it vital success of the system testing
objectives, there are several rules that can serve as testing objectives. They are

 Testing is a process of executing a program with the intend of findingan error.


 A good test case is one that has high possibility of finding an undiscovered error.
 A successful test is one that uncovers an undiscovered error.

If a testing is conducted successfully according to the objectives as stated above, it would


uncovered errors in the software also testing demonstrate that the software function appear
to be working according to the specification, that performance requirement appear to have
been met.

There are three ways to test program.

 For correctness
 For implementation efficiency
 For computational complexity
Test for correctness are supposed to verify that a program does exactly what it was designed to
do. This is much more difficult than it may at first appear, especially for large programs.

Test Plan:
A test plan implies a series of desired course of action to be followed in accomplishing various
testing methods. The Test Plan acts as a blue print for the action that is to be followed. The
software engineers create a computer program, its documentation and related data structures.
The software developers is always responsible for testing the individual units of the programs,
ensuring that each performs the function for which it was designed. There is an independent
test group (ITG) which is to remove the inherent problems associated with letting the builder to
test the thing that has been built. The specific objectives of testing should be stated in
measurable terms. So that the mean time to failure, the cost to find and fix the defects,
remaining defect density or frequency of occurrence and test work-hours per regression test all
should be stated within the test plan.

The levels of testing include:

 Unit testing
 Integration Testing
 Data validation Testing
 Output Testing

Unit Testing:
A test plan implies a series of desired course of action to be followed in accomplishing various
testing methods. The Test Plan acts as a blue print for the action that is to be followed. The
software engineers create a computer program, its documentation and related data structures.
The software developers is always responsible for testing the individual units of the programs,
ensuring that each performs the function for which it was designed. There is an independent
test group (ITG) which is to remove the inherent problems associated with letting the builder to
test the thing that has been built. The specific objectives of testing should be stated in
measurable terms. So that the mean time to failure, the cost to find and fix the defects,
remaining defect density or frequency of occurrence and test work-hours per regression test all
should be stated within the test plan.
The levels of testing include:

 Unit testing
 Integration Testing
 Data validation Testing
 Output Testing

Integration Testing:
Integration testing is systematic technique for constructing the program structure while at the same
time conducting tests to uncover errors associated with interfacing. The objective is to take unit
tested components and build a program structure that has been dictated by design. The entire
program is tested as whole. Correction is difficult because isolation of causes is complicated by vast
expanse of entire program. Once these errors are corrected, new ones appear and the process
continues in a seemingly endless loop.

After unit testing in Sell-Soft System all the modules were integrated to test for any inconsistencies
in the interfaces. Moreover differences in program structures were removed and a unique program
structure was evolved.

Validation Testing or System Testing:

This is the final step in testing. In this the entire system was tested as a whole with all forms, code,
modules and class modules. This form of testing is popularly known as Black Box testing or System
tests.

Black Box testing method focuses on the functional requirements of the software. That is, Black Box
testing enables the software engineer to derive sets of input conditions that will fully exercise all
functional requirements for a program.

Black Box testing attempts to find errors in the following categories; incorrect or missing functions,
interface errors, errors in data structures or external data access, performance errors and
initialization errors and termination errors
Output Testing or User Acceptance Testing:
The system considered is tested for user acceptance; here it should satisfy the firm’s need. The
software should keep in touch with perspective system; user at the time of developing and making
changes whenever required. This done with respect to the following points

 Input Screen Designs,


 Output Screen Designs,
 Online message to guide the user and the like.

The above testing is done taking various kinds of test data. Preparation of test data plays a vital role
in the system testing. After preparing the test data, the system under study is tested using that test
data. While testing the system by which test data errors are again uncovered and corrected by using
above testing steps and corrections are also noted for future use.

Validation Checking:
At the culmination of integration testing, software is completely assembled as a package; interfacing
errors have been uncovered and corrected, and a final series of software test-validation checks may
begin. Validation can be defined in many ways, but a simple definition (Albeit Harsh) is that
validation succeeds when software functions in a manner that can be reasonably expected by a
customer. Software validation is achieved through a series of black-box tests to be conducted and a
test procedure defines specific test cases that will be used in attempt to uncover errors in conformity
with requirements. Both the plan and procedure are designed to ensure that all functional
requirements are satisfied; all performance requirements are achieved; documentation is correct
and human –Engineered and other requirements are met. Once the application was made free of all
logical and interface errors , inputting dummy data to ensure that the software developed satisfied
all the requirements of the user did validation checks .However , the data are created with the intent
of determining whether the system will process them correctly .

In the proposed system, if the clients click the send button after selecting a file from his file list, then
the system will show the confirmation message for sending files. Similarly if a client makes an
attempt to download a file from the server file list, then also the system will show the confirmation
message for downloading. This is how the data validations were made in the proposed system.

12. SOURCE CODE :

#include<iostream> //input/output objects c++

#include<stdio.h> //standard input/output c

#include<stdlib.h> //standard library

#include<conio.h> //getch function

#include<dos.h> //delay function

#include<windows.h> //Sleep,gotoxy coordinate functions

#include<iomanip> //output manipulatons

#include<fstream> //file handling

#include<string.h> //string abstract datatype

#include<math.h> //mathematical operations

#include<time.h> //system current time and date

#include"MMSystem.h" //plays audio track

using namespace std;

char loc[20]; //holds time ad date

void play(int); //function for playing audio track

void delr1(); //delete file

void delr2(); //rename file

void gotoxy (int x, int y); //handle output on screen

void frame (); //frame for every dialog box

void frame_fix();
char *date_time ();

void scroll_note();

void flow(char *ch);

void main_menu(); // main part of the program

void sub_menu();

COORD coord = {0, 0};

FILE *ff,*fs,*fp,*fg;

class date;

class machine //class for entire program

private:

int mbno,pcode,amt,prevent;

int adl;

int day,month,year,hour,min,sec;

char fname[10],sname[10],p_name[20],city[15],email[20],dob[15],type;

char acno[7],pin[5];

public:

void create_account();

void help();

void main_menu();

void sub_menu();

void cash_deposit(machine);
void fund_transfer(machine);

void change_pin(machine);

void other_services(machine);

void fast_cash(machine);

void cash_withdraw(machine);

void balance_enquiry(machine);

void mini_statement(machine);

void admin(); //admin login for verification

void note();

machine login_check();

};

class date //class current date and time of system

public:

int aday,amonth,ayear,ahour,amin,asec;

void date_times()

SYSTEMTIME t; //pre defined in time.h

GetLocalTime(&t);
aday=t.wDay,amonth=t.wMonth,ayear=t.wYear,ah
our=t.wHour,amin=t.wMinute,asec=t.wSecond;

};

void machine::sub_menu() //after user login the following fuctions are displayed

system("cls");

int cpin;

machine r;

r=login_check();

fclose(fg);

while(1)

int i;

system("cls");

system("COLOR 1F");

frame();
gotoxy(1,6);

cout<<"CASH DEPOSIT";

gotoxy(1,10);

cout<<"FUND TRANSFER";

gotoxy(1,14);

cout<<"PIN CHANGE";

gotoxy(1,18);

cout<<"OTHER SERVICES";

gotoxy(64,6);

cout<<"FAST CASH";

gotoxy(64,10);

cout<<"CASH WITHDRAWL";

gotoxy(64,14);

cout<<"BALANCE ENQUIRY";

gotoxy(64,18);

cout<<"MINI STATEMENT";

gotoxy(28,4);

char*s="Select your transaction";

for(int i=0;i<24;i++)

cout<<s[i];

Sleep(100);

}
int op;

gotoxy(38,24);

cout<<" ";

cin>>op;

switch(op)

case 1:

cash_deposit(r);

break;

case 2:

fund_transfer(r);

break;

case 3:

change_pin(r);

break;

case 4:

other_services(r);
break;

case 5:

fast_cash(r);

break;

case 6:

cash_withdraw(r);

break;

case 7:

balance_enquiry(r);

break;

case 8:

mini_statement(r);

break;

default:

gotoxy(64,24);
cout<<"Invalid Input ";

cout<<"\a\a\a";
//terminating to mainmenu

Sleep(1000);

main_menu();

void machine::help() //initial help notice in mainmenu on opening account

system("cls");

system("COLOR 70");

for(int i=0;i<25;i++)

gotoxy(2,i);

cout<<"|";

gotoxy(77,i);

cout<<"|";

gotoxy(3,0);

cout<<"Inorder to use our ATM services be sure that,";

gotoxy(3,2);
cout<<"you might have already opened an account previously.
";

gotoxy(3,22);

cout<<"For more information, contact:";

gotoxy(3,23);

cout<<"Call our 24x7 helpline through toll free 1800 100


2400.";

gotoxy(3,24);

cout<<"Contact at rohithvutnoor.blogspot.in";

gotoxy(3,5);

flow("ATM Services");

gotoxy(3,8);

flow("Cash Withdrawal : Use this service to withdraw amount


(40,000/-per day).");

gotoxy(3,10);

flow("Fast Cash : This enables to withdraw your preferred


amounts with a touch.");

gotoxy(3,12);

flow("Pin Change : Use this service to change your ATM


password.");

gotoxy(3,14);

flow("Balance Enquiry : To check the current balance in your


account.");

gotoxy(3,16);

flow("Ministatement : Keep track of the transactions in your


account.");
gotoxy(3,18);

flow("Fund Transfer : Transfers amount instantly to your loved


ones.");

getch();

main_menu();

void machine::create_account() //create account on selecting the option on main menu

machine a;

system("cls");

system("COLOR F5");

for(int i=0;i<25;i++)

gotoxy(5,i);

cout<<"|";

gotoxy(75,i);

cout<<"|";

gotoxy(34,2);

cout<<"APPLICATION FORM";

gotoxy(10,5);

cout<<"Enter Full Name : ";

cin>>a.fname>>a.sname;

gotoxy(10,7);
cout<<"Father/Guardian : ";

cin>>a.p_name;

gotoxy(10,9);

cout<<"Date Of Birth (dd/mm/yyyy) : ";

cin>>a.dob;

gotoxy(10,11);

cout<<"Account Type (S/C): ";

cin>>a.type;

gotoxy(10,13);

cout<<"City : ";

cin>>a.city;

gotoxy(10,15);

cout<<"PINCODE : ";

cin>>a.pcode;

gotoxy(10,17);

cout<<"Email Id : ";

cin>>a.email;

gotoxy(10,19);

cout<<"Enter initial amount( >= 500) ";

cin>>a.amt;

strcpy(a.pin,"6235");

fs=fopen("accounts.txt","rb+");

//initially there must be a valid user who have created account


already
//so
that on using his account information, card details are given for next

//for
initail account there must be a file with his deatails

machine b;

while(fscanf(fs,"%s %s %s %s %d \n",b.acno,b.pin,b.fname,b.sname,&b.amt)!=EOF);

strcpy(a.acno,b.acno);

if(a.acno[5]!='9')

a.acno[5]=a.acno[5]+1;

else

if(a.acno[4]!='9') //incrementing the account


number..actualyy thought of creating a random one but involves some complexity

{ //but you can


try it

a.acno[4]=a.acno[4]+1;

a.acno[5]='0';

fprintf(fs,"%s %s %s %s %d
\n",a.acno,a.pin,a.fname,a.sname,a.amt);

fclose(fs);

//inital account details posting to atm_users file

ff=fopen("atm_users.txt","a");
fprintf(ff,"%s %s %s%s %s %s %c %s %d %s %d
\n",a.acno,a.pin,a.fname,a.sname,a.p_name,a.dob,a.type,a.city,a.pcode,a.email,a.amt);

fclose(ff);

//initialize amount,time & date of account opened and


APPENDING to transactions file

a.adl=a.amt; //adl = additional amount either


deposit/credit

a.prev=0; //prev = available balance before transaction

date d;

d.date_times();

a.day=d.aday;a.month=d.amonth;a.year=d.ayear;

a.hour=d.ahour;a.min=d.amin;a.sec=d.asec;

//to transactions file

fp=fopen("transactions.txt","a");

fprintf(fp,"%s %s %d %d %d %d %d %d %d %d %d
\n",a.acno,a.fname,a.prev,a.adl,a.amt,a.day,a.month,a.year,a.hour,a.min,a.sec);

fclose(fp);

gotoxy(35,21);

cout<<" SUBMIT";

char c;

c=getche();

gotoxy(10,23);

cout<<"Loading";

Sleep(400);

cout<<".";

Sleep(400);
cout<<".";

Sleep(400);

cout<<".";

Sleep(400);

system("cls");

system("COLOR B0");

frame_fix();

gotoxy(22,5);

cout<<"YOUR ACCOUNT HAS SUCCESSFULLY


CREATED ";

gotoxy(29,8); //giving account deatails on that


particular user

cout<<"ACCOUNT NUMBER : "<<a.acno;

gotoxy(29,12);

cout<<"ATM PIN : "<<a.pin;

gotoxy(8,19);

cout<<"NOTE : THESE ARE THE ACCOUNT


CREDENTIALS FOR USING ATM SERVICES.";

gotoxy(28,23);

cout<<"MAIN MENU : PRESS ENTER";

char op;

op=getche();

main_menu();

}
void machine:: balance_enquiry(machine r) //argument object recieved from login_check
function

system("cls");

frame_fix();

gotoxy(22,10);

cout<<"ACCOUNT HOLDER NAME : "<<r.fname;

gotoxy(22,13);

cout<<"CURRENT BALANCE : "<<r.amt;

Sleep(3000);

system("cls");

gotoxy(18,13);

cout<<"YOUR TRANSACTION IS BEING PROCESSED


PLEASE WAIT ";

Sleep(1000);

system("cls");

gotoxy(18,13);

cout<<" TRANSACTION COMPLETED


SUCCESSFULLY \a\a";

Sleep(1000);

main_menu();

}
void machine:: cash_deposit(machine r) //argument object recieved from login_check
function

FILE *f1,*f2,*f3; //declaring pointers in C style

system("cls");

int cash;

frame_fix();

gotoxy(22,6);

cout<<"PLEASE ENTER AMOUNT : ";

cin>>cash;

machine g;

g.prev=r.amt; //holding available balance before


transaction which equals to present previous amount

g.amt=r.amt+cash; //present amount equals to amount sum of


current transaction + prevs avilable balance

strcpy(g.acno,r.acno);strcpy(g.fname,r.fname);strcpy(g.sname,r.
sname);

strcpy(g.pin,r.pin);

g.adl=cash; // additional amount will be currents


transaction amount

date d;

d.date_times();

g.day=d.aday;g.month=d.amonth;g.year=d.ayear;

g.hour=d.ahour;g.min=d.amin;g.sec=d.asec;
//transacton APPENDING to transactions file

machine a;

f1=fopen("transactions.txt","a");

fprintf(f1,"%s %s %d %d %d %d %d %d %d %d %d
\n",g.acno,g.fname,g.prev,g.adl,g.amt,g.day,g.month,g.year,g.hour,g.min,g.sec);

fclose(f1);

f2=fopen("accounts.txt","r"); //finding current


account details to accounts file for changing amount

f3=fopen("temp.txt","w");

while(fscanf(f2,"%s %s %s %s %d \n",a.acno,a.pin,a.fname,a.sname,&a.amt)!=EOF)

if(strcmp(g.acno,a.acno)==0)

a.amt=g.amt;

fprintf(f3,"%s %s %s %s %d
\n",a.acno,a.pin,a.fname,a.sname,a.amt);

fclose(f3);

fclose(f2);

system("cls");

frame_fix();

gotoxy(18,12);

cout<<"AMOUNT DEPOSITED : "<<g.adl<<" FINAL


BALANCE : "<<g.amt;

Sleep(3000);
system("cls");

gotoxy(18,13);

cout<<" PLEASE WAIT VALIDATING THE CASH


";

Sleep(1000);

system("cls");

gotoxy(18,13);

cout<<" TRANSACTION COMPLETED


SUCCESSFULLY \a\a";

Sleep(1000);

delr1(); //calling file delete function bottom section of the code

main_menu();

void machine:: cash_withdraw(machine r) //argument object recieved from login_check


function

FILE *f1,*f2,*f3; //declaring pointers in C style

system("cls");

int cash;

frame_fix();

gotoxy(22,6);

cout<<"PLEASE ENTER AMOUNT : ";

cin>>cash;

if(cash>r.amt)

{
gotoxy(15,13);

cout<<"WITHDRAWAL AMOUNT IS GREATER THAN


THE AVAILABLE BALANCE \a\a\a";

Sleep(1000);

main_menu();

machine g;

g.prev=r.amt;

g.amt=r.amt-cash; //present amount equals to amount


sum of current transaction - prevs avilable balance

strcpy(g.acno,r.acno);strcpy(g.fname,r.fname);strcpy(g.sname,r.
sname);

strcpy(g.pin,r.pin);

g.adl=cash;

date d;

d.date_times();

g.day=d.aday;g.month=d.amonth;g.year=d.ayear;

g.hour=d.ahour;g.min=d.amin;g.sec=d.asec;

//transacton APPENDING to transactions file

machine a;

f1=fopen("transactions.txt","a");

fprintf(f1,"%s %s %d %d %d %d %d %d %d %d %d
\n",g.acno,g.fname,g.prev,g.adl,g.amt,g.day,g.month,g.year,g.hour,g.min,g.sec);

fclose(f1);
f2=fopen("accounts.txt","r"); //finding current account
details to accounts file for changing amount

f3=fopen("temp.txt","w");

while(fscanf(f2,"%s %s %s %s %d \n",a.acno,a.pin,a.fname,a.sname,&a.amt)!=EOF)

if(strcmp(g.acno,a.acno)==0)

a.amt=g.amt;

fprintf(f3,"%s %s %s %s %d
\n",a.acno,a.pin,a.fname,a.sname,a.amt);

fclose(f3);

fclose(f2);

system("cls");

frame_fix();

gotoxy(18,12);

cout<<"AMOUNT WITHDRAWN : "<<g.adl<<" FINAL


BALANCE : "<<g.amt;

Sleep(3000);

system("cls");

gotoxy(18,13);

cout<<"YOUR TRANSACTION IS BEING PROCESSED


PLEASE WAIT ";

Sleep(1000);

system("cls");

gotoxy(18,13);
cout<<" TRANSACTION COMPLETED
SUCCESSFULLY ";

Sleep(100);

gotoxy(30,16);play(2);

cout<<"PLEASE COLLECT CASH \a\a";

Sleep(1000);

delr1(); //calling file delete function bottom section of the


code

main_menu();getch();

void machine::change_pin(machine g) //argument object recieved from login_check


function

system("cls");

frame_fix();

FILE *fk,*fl; //declaring pointers in C style

char npin1[5],npin2[5];

gotoxy(2,11);

cout<<"YOUR PIN IS CONFIDENTIAL";

gotoxy(2,13);
cout<<"NOBODY SHOULD SEE THE PIN";

gotoxy(2,15);

cout<<"WHILE YOU ARE ENTERING IT.";

gotoxy(2,17);

cout<<"MAKE YOUR PIN MORE SECURE BY";

gotoxy(2,19);

cout<<"CHANGING IT FREQUENTLY.";

gotoxy(30,6);

cout<<"ENTER NEW PIN : ";

cin>>npin1;

gotoxy(30,8);

cout<<"CONFIRM PIN : ";

cin>>npin2;

machine a;

if(strcmp(npin1,npin2)==0)

fk=fopen("accounts.txt","r");

fl=fopen("temp.txt","w"); //finding current account details to


accounts file for changing pin

while(fscanf(fk,"%s %s %s %s %d
\n",a.acno,a.pin,a.fname,a.sname,&a.amt)!=EOF)

if(strcmp(g.acno,a.acno)==0)

strcpy(a.pin,npin1);

fprintf(fl,"%s %s %s %s %d
\n",a.acno,a.pin,a.fname,a.sname,a.amt);
}

fclose(fl);

fclose(fk);

else

gotoxy(40,16);

cout<<"Password do not match try after some time \a\a\a";

Sleep(1000);

main_menu();

system("cls");

frame_fix();

gotoxy(18,13);

cout<<"YOUR TRANSACTION IS BEING PROCESSED


PLEASE WAIT";

Sleep(1000);

system("cls");

gotoxy(18,13);

cout<<" TRANSACTION COMPLETED SUCCESSFULLY


\a\a";

Sleep(1000);

delr1(); //calling file delete function bottom section of the


code

main_menu();
}

void machine::other_services(machine r) //argument object recieved from login_check


function

system("cls");

system("COLOR 70");

for(int i=0;i<25;i++)

gotoxy(2,i);

cout<<"|";

gotoxy(77,i);

cout<<"|";

gotoxy(3,0);

cout<<"Good to see here ";

gotoxy(59,0);

cout<<"Mr."<<strupr(r.fname)<<"_"<<strupr(r.sname);//name
of user on top right

gotoxy(32,1);

gotoxy(32,1);

cout<<"POINTS TO NOTE";gotoxy(3,3);

flow("Ensure that you change the PIN number after first using
your card also");gotoxy(3,4);

flow("frequently change PIN number");

gotoxy(3,6);
flow("Ensure that nobody else can see you entering your PIN
number at the ATM.");

gotoxy(3,8);

flow("Do not use the ATM machine when strangers are inside
the ATM counter.");

gotoxy(3,10);

flow("Do not seek the assistance of strangers while operating


the ATM machine.");

gotoxy(3,12);

flow("Should you notice anything strange or suspicious at the


ATM counter please");

gotoxy(3,13);

flow("refrain from using the same.");

gotoxy(3,15);

flow("Ensure that you check your account statement from time


to time.");

gotoxy(3,17);

flow("In case you lose your ATM card call 1800-425-3800 to


block your card and ");

gotoxy(3,18);

flow("this avoid misuse of the card.");

gotoxy(3,20);

flow("Do not disclose your PIN number to others IBO/RBI or


any other Government,");

gotoxy(3,21);

flow("Banking institutions will never require you to disclose


your PIN number.");

play(3);
gotoxy(3,23);

flow("-------------------------------");

gotoxy(45,23);

flow("--------------------------------");

gotoxy(35,23);

cout<<" THANK YOU ";Sleep(1000);

gotoxy(78,24);cout<<"";

system("cls");

system("color 2F");

gotoxy(18,13);

cout<<" TRANSACTION COMPLETED


SUCCESSFULLY \a\a";

Sleep(1000);

main_menu();

int main()

scroll_note(); //welcome note

machine m; //object of machine class

m.main_menu(); //calling menu function for making


simple for our program MAIN

return 0;

}
13. SCREENSHOTS –
14. CONCLUSION :

The project titled as “Atm Services” is a web based application. This software provides facility
for, create ,update and delete accountants details after login . it can search branch wise
accountant. And also search all candidates studying in the various branches and can update and
delete them The software is developed with modular approach. All modules in the system have
been tested with valid data and invalid data and everything work successfully. Thus the system
has fulfilled all the objectives identified and is able to replace the existing system.

The project has been completed successfully with the maximum satisfaction of the
organization. The constraints are met and overcome successfully. The system is designed as like
it was decided in the design phase. The project gives good idea on developing a full-fledged
application satisfying the user requirements.

The system is very flexible and versatile. This software has a user-friendly screen that enables
the user to use without any inconvenience. Validation checks induced have greatly reduced
errors. Provisions have been made to upgrade the software.

15. REFERENCES :
 www.tutorialspoint.com
 www.w3schools.com
 www.wikipedia.com

You might also like