Keval
Keval
PROJECT REPORT ON
“ATM MACHINE”
ROLL NO :
PGT (CS)
SCHOOL, KANADRI
CERTIFICATE
Examiner:
Name:
Signature:
TABLE OF CONTENTS [ T O C ]
01 ACKNOWLEDGEMENT 03
02 INTRODUCTION 06
04 PROPOSED SYSTEM 08
07 FLOW CHART 23
08 SOURCE CODE 27
09 OUTPUT 55
10 TESTING 61
11 INSTALLATION PROCEDURE 65
13 BIBLIOGRAPHY 70
ACKNOWLEDGEMENT
Apart from the efforts of me, the success of any project
depends largely on the encouragement and guidelines of
many others. I take this opportunity to express my gratitude to
the people who have been instrumental in the successful
completion of this project.
I express deep sense of gratitude to almighty God for giving
me strength for the successful completion of the project.
I express my heartfelt gratitude to my parents for constant
encouragement while carrying out this project.
I gratefully acknowledge the contribution of the individuals
who contributed in bringing this project up to this level, who
continues to look after me despite my flaws,
I express my deep sense of gratitude to the luminary The
Principal, Manav Kendra Gyan Mandir School, Kandari
who has been continuously motivating and extending their
helping hand to us.
I express my sincere thanks to the academician The Vice
Principal, Manav Kendra Gyan Mandir School, Kandari,
for constant encouragement and the guidance provided
during this project
I am overwhelmed to express my thanks to The
Administrative Officer, Manav Kendra Gyan Mandir
School, Kandari for providing me an infrastructure and
moral support while carrying out this project in the
school.
My sincere thanks to Mr. Babitkumar Sharma, Master In-
charge, a guide, mentor all the above a friend, who critically
reviewed my project and helped in solving each and every
problem, occurred during implementation of the project
The guidance and support received from all the members who
contributed and who are contributing to this project, was vital
for the success of the project. I am grateful for their constant
support and help.
PROJECT ON ATM MACHINE
MANAGEMENT SYSTEM
INTRODUCTION
INITIATION PHASE
These include:
IMPLEMENTATION PHASE
FLOW CHART
START
CONN = SQL . CONNECT ( HOST =' LOCALHOST ', USER =' ROOT ’, PASSWORD ='MKGM123', DATABASE =’ KCS ’)
C 1=CONN. CURSOR ()
print(" WELCOME TO OUR BANK ")
PRINT("2.T O LOGIN")
PRINT("3. EXIT")
IF
OP==1:
c="y"
WHILE
C ==”Y”
IF
OP==2
print("1.Depositng money")
print("2.withdrawing money")
print("3.Transfering money")
print("4.Checking balance")
print("5.Changing Account number
")
SOURCE CODE
Create a Python project of a ATM MACHINE
MANAGEMENT SYSTEM.
Note:
Table Creation:
conn=sql.connect(host='localhost',user='root',password
='mkgm123',database='kcs')
if conn.is_connected():
print("successfully connected")
c1=conn.cursor()
c1.execute(mn)
print("Successfully created")
Main Code:
conn=sql.connect(host='localhost',user='root',password
='mkgm123',database='kcs')
c1=conn.cursor()
print("========================================
========================================")
*-*-*-]")
print("========================================
========================================")
while True:
print("2.To login")
print("3.Exit")
print("========================================
========================================")
print("========================================
========================================")
if op==1:
c="y"
while c=="y":
:"))
ACCONT_NO={}".format(m)
c1.execute(cb)
d=c1.fetchall()
data=c1.rowcount
if data==1:
print("========================================
========================================")
exists!")
c=input("Do you want to continue (y/n) :")
print("========================================
========================================")
if c=="y":
continue
else:
BEFORE EXITING")
print("========================================
========================================")
else:
ab="insert into
records(ACCONT_NO,PASSWORD,NAME)
values({},{},'{}')".format(m,passw,name)
print("========================================
========================================")
c1.execute(ab)
conn.commit()
print("========================================
========================================")
deposited :"))
print("========================================
========================================")
ACCONT_NO={}".format(s,m)
c1.execute(sr)
conn.commit()
ef="update records set balance=cr_amt-
c1.execute(ef)
conn.commit()
print("Successfully Deposited")
BEFORE EXITING")
break
elif op==2:
y="y"
while y=="y":
acct=int(input("Enter your account number
:"))
ACCONT_NO={}".format(acct)
c1.execute(cb)
c1.fetchall()
data=c1.rowcount
if data==1:
print("========================================
========================================")
ACCONT_NO={}".format(acct)
c1.execute(e)
a=c1.fetchone()
d=list(a)
if pas==d[0]:
print("correct")
print("1.Depositng money")
print("2.Withdrawing money")
print("3.Transfering money")
print("4.Checking balance")
print("========================================
========================================")
========================================")
if r==1:
amt=int(input("Enter amount of
print("========================================
========================================")
CR_AMT=CR_AMT + {} where
ACCONT_NO={}".format(amt,acct)
c1.execute(sr)
conn.commit()
balance=cr_amt-withdrawl where
ACCONT_NO={}".format(acct)
c1.execute(ef)
conn.commit()
print("Successfully Deposited")
(y/n) :")
print("========================================
========================================")
if t=="y":
continue
else:
if r==2:
amt=int(input("Enter amount of
print("========================================
========================================")
where accont_no={}".format(acct)
c1.execute(ah)
m=c1.fetchone()
if amt >m[0]:
than",amt)
print("========================================
========================================")
else:
balance=balance - {} where
ACCONT_NO={}".format(amt,acct)
ed="update records set
ACCONT_NO={}".format(amt,acct)
c1.execute(ed)
c1.execute(sr)
conn.commit()
print("Successfully Updated")
(y/n) :")
if y=="y":
continue
else:
print("========================================
========================================")
ACCONT_NO={}".format(act)
c1.execute(cb)
c1.fetchall()
data=c1.rowcount
if data==1:
print(act,"number exists")
be transferred :"))
print("========================================
========================================")
c1.execute(ah)
c=c1.fetchone()
if m > c[0]:
than",m)
print("Please try again!")
print("========================================
========================================")
else:
balance=balance-{} where
ACCONT_NO={}".format(m,acct)
balance=balance+{} where
ACCONT_NO={}".format(m,act)
w="update records set
withdrawl=withdrawl+{} where
accont_no={}".format(m,acct)
CR_AMT=CR_AMT+{} where
accont_no={}".format(m,act)
c1.execute(av)
c1.execute(cv)
c1.execute(w)
c1.execute(t)
conn.commit()
print("Successfully
Transferred")
continue
else:
print(" Thank
you")
if r==4:
where accont_no={}".format(acct)
c1.execute(ma)
k=c1.fetchone()
account :",k)
print("========================================
========================================")
(y/n) :")
if y=="y":
continue
else:
if r==5:
number :"))
cb="select * from records where
ACCONT_NO={}".format(i)
c1.execute(cb)
c1.fetchall()
data=c1.rowcount
if data==1:
exists")
print("Try again!")
if y=="y":
continue
else:
print(" Thank
you")
else:
:")
password={}".format(i,name,pas)
c1.execute(ar)
conn.commit()
is :",i)
else:
print("Wrong password!!!")
print("========================================
========================================")
:")
else:
print(" Exiting")
c1.close()
break
else:
Python
MySQL
TESTING
TESTING METHODS
Software testing methods are traditionally divided into black
box testing and white box testing. These two approaches are used to
describe the point of view that a test engineer takes when designing
test cases.
BLACK BOX TESTING
SPECIFICATION-BASED TESTING
The black box tester has no "bonds" with the code, and a
tester's perception is very simple: a code must have bugs. Using the
principle, "Ask and you shall receive," black box testers find bugs
where programmers don't. But, on the other hand, black box testing
has been said to be "like a walk in a dark labyrinth without a
flashlight," because the tester doesn't know how the software being
tested was actually constructed.
That's why there are situations when (1) a black box tester
writes many test cases to check something that can be tested by
only one test case, and/or (2) some parts of the back end are not
tested at all. Therefore, black box testing has the advantage of "an
unaffiliated opinion," on the one hand, and the disadvantage of "blind
exploring," on the other.
ATM MACHINE:-
Pre-Requisites :
Installation :-
mysql.connector or pymysql
CAUTION :-
ATHALON(3800+- 4200+
DUAL CORE)
X. Printer : required
SOFTWARE REQUIREMENTS:
I. Windows OS
II. Python
BIBLIOGRAPHY
***********