0% found this document useful (0 votes)
15 views36 pages

ATM Machine - Final

The document outlines a Computer Science project on an ATM machine software developed by Atul Sinha at Narayana School for the academic year 2024-2025. It includes sections on Python programming, project lifecycle, system requirements, and detailed program code for functionalities like account creation, money transactions, and balance checks. The project also acknowledges guidance from teachers and provides a bibliography of resources used.

Uploaded by

atul.dksbb
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views36 pages

ATM Machine - Final

The document outlines a Computer Science project on an ATM machine software developed by Atul Sinha at Narayana School for the academic year 2024-2025. It includes sections on Python programming, project lifecycle, system requirements, and detailed program code for functionalities like account creation, money transactions, and balance checks. The project also acknowledges guidance from teachers and provides a bibliography of resources used.

Uploaded by

atul.dksbb
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

Narayana School - Newtown

COMPUTER SCIENCE (083)


PROJECT
2024-2025
TOPIC:

ATM MACHINE
GUIDED BY:- MRS. ROSHNI CHAKRABORTY

SUBMITTED BY : ATUL SINHA


CLASS AND SECTION : XII IIT
ROLL NUMBER :
REGISTRATION NUMBER :

1 |Computer Science Narayana School


CERTIFICATE

This is to certify that of class XII, Narayana School, New Town has
successfully completed his/her project in Computer Science
Practical for the AISSCE as prescribed by CBSE in the year 2024-
2025.

Roll No :

Sign. of Internal Sign. of External

____________ _____________

2 |Computer Science Narayana School


TABLE OF CONTENTS
S NO CONTENTS PAGE NO

1 ACKNOWLEDGEMENT

2 INTRODUCTION TO PYTHON

3 INTRODUCTION TO THE PROJECT

4 LIFE CYCLE OF A PROJECT

5 SYSTEM REQUIREMENTS

6 MOTIVE

PROGRAM CODE DETAILS


7

8 BACKEND DETAILS

9 FRONTEND DETAILS

10 SCREEN SHOTS OF EXECUTION

11 LIMITATIONS

12 BIBLIOGRAPHY

3 |Computer Science Narayana School


ACKNOWLEDGEMENT

I thank my Computer Science teacher Mrs. Roshni

Chakraborty for guidance and support. I am also

thankful to our principal Mrs. Jyotica Shafaat. I would

also thank to my parents for encouraging during the

course of this project. Finally, I would like to thank CBSE

for giving me this opportunity to undertake this project.

4 |Computer Science Narayana School


INTRODUCTION TO PYTHON

Python is an interpreted, object-oriented, high-level programming language


with dynamic semantics. Its high-level built in data structures, combined
with dynamic typing and dynamic binding, make it very attractive for Rapid
Application Development, as well as for use as a scripting or glue language
to connect existing components together. Python's simple, easy to learn
syntax emphasizes readability and therefore reduces the cost of program
maintenance. Python supports modules and packages, which encourages
program modularity and code reuse. The Python interpreter and the
extensive standard library are available in source or binary form without
charge for all major platforms, and can be freely distributed.

5 |Computer Science Narayana School


History of Python:

Python is a widely used general-purpose, high-level programming


language. It was initially designed by Guido van Rossum in 1991 and
developed by Python Software Foundation. It was mainly developed for
emphasis on code readability, and its syntax allows programmers to
express concepts in fewer lines of code.

6 |Computer Science Narayana School


INTRODUCTION TO THE PROJECT

The ATM MACHINE SOFTWARE is device which

is as same as normal ATM machine . It allows the user

to create account, deposit money ,withdraw money,

Transfer the money and check Balance.

7 |Computer Science Narayana School


LIFE CYCLE OF PROJECT

The System Development Life Cycle (SDLC) is a set of activities that analysts,
designers and users carry out to develop and implement an information
system .The SDLC consists of the following:

Feasibility Study

Requirement Definition

Design (Database and program)

Development of Software

Unit Testing

System Testing

Implementation

Evaluation

Maintenance

8 |Computer Science Narayana School


SYSTEM REQUIREMENTS

HARDWARE REQUIREMENT:

Printer- to print the required documents of the


project.
Compact Drive
Processor: Pentium III and above
RAM: 256 MB(minimum)
Hard-Disk : 20 GB(minimum)

SOFTWARE REQUIREMENT:

 Windows 7 or higher
 My-SQL server 5.5 or higher (as backend)
 Python idle 3.6 or higher or spyder (as
frontend).
 Microsoft Word 2010 or higher for
documentation.

9 |Computer Science Narayana School


MOTIVE

 To apply programming knowledge into the real-


world situation.

 Allow the execute different money transaction


activities like deposit, withdrawal, transfer etc.

 To display the transaction details for each user


login.

 Globalized usage.

10 |Computer Science Narayana School


PROGRAM CODE
DETAILS

11 |Computer Science Narayana School


BACKEND DETAILS

Database Name: MEDICINE


Code:
CREATE DATABASE ATM_MACHINE;
USE ATM_MACHINE;

Table Name: RECORDS


Attributes:
RECORDS INT Primary Key
PASSWORD INT(3)
NAME VARCHAR(20)
CR_AMT INT default 0
WITHDRAWL INT default 0
BALANCE INT default 0

12 |Computer Science Narayana School


Code:
CREATE TABLE RECORDS
( ACCONT_NO INT(4) primary key,
PASSWORD INT(3),
NAME VARCHAR(20),
CR_AMT INT default 0,
WITHDRAWL INT default 0,
BALANCE INT default 0);

13 |Computer Science Narayana School


FRONT-END DETAILS

import mysql.connector as sql


conn=sql.connect(host='localhost',user='root',password='1234',database='A
TM_MACHINE')
c1=conn.cursor()
print("=================================================
===============================")

print(" WELCOME TO OUR ATM ")

print("=================================================
===============================")

print("1.To create account")


print("2.To login")
print("3.Exit")
print("=================================================
===============================")

op=int(input("Enter your choice :"))


print("=================================================
===============================")

14 |Computer Science Narayana School


if op==1:
c="y"
while c=="y":
m=int(input("Enter a 4 digit number as accont number:"))
cb="select * from records where ACCONT_NO={}".format(m)
c1.execute(cb)
d=c1.fetchall()
data=c1.rowcount
if data==1:

print("=================================================
===============================")

print("This account number already exists:")


c=input("Do you want to continue y/n -")

print("=================================================
===============================")

if c=="y":
continue
else:
print("Thank you.")
print("PLEASE CLOSE THIS FILE BEFORE EXITING")
print("Visit again")
15 |Computer Science Narayana School
print("=================================================
===============================")

else:
name=input("Enter your name:")
passw=int(input("Enter your pass word:"))
ab="insert into records(ACCONT_NO,PASSWORD,NAME)
values({},{},'{}')".format(m,passw,name)

print("=================================================
===============================")

c1.execute(ab)
conn.commit()
print("Account successfully created")
print("The minimum balance is 1000 ")

print("=================================================
===============================")

s=int(input("Enter the money to be deposited :"))

print("=================================================
===============================")
16 |Computer Science Narayana School
sr="update records set CR_AMT={} where
ACCONT_NO={}".format(s,m)
c1.execute(sr)
conn.commit()
ef="update records set balance=cr_amt-withdrawl where
ACCONT_NO={}".format(m)
c1.execute(ef)
conn.commit()
print("successfully deposited")

print(" Thank you")


print(" PLEASE CLOSE THIS FILE BEFORE EXITING")
print("Visit again")
break
if op==2:
y="y"
while y=="y":

acct=int(input("Enter your account number:"))


cb="select * from records where ACCONT_NO={}".format(acct)
c1.execute(cb)
c1.fetchall()
data=c1.rowcount

17 |Computer Science Narayana School


if data==1:
pas=int(input("Enter your password :"))

print("=================================================
===============================")

e="select password from records where


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.Transferring money")
print("4.Checking balance")
print("5.Changing Account number ")

print("=================================================
===============================")

r=int(input("Enter your choice:"))

18 |Computer Science Narayana School


print("=================================================
===============================")

if r==1:
amt=int(input("Enter the money to be deposited:"))

print("=================================================
===============================")

sr="update records set CR_AMT=CR_AMT + {} where


ACCONT_NO={}".format(amt,acct)
c1.execute(sr)
conn.commit()
ef="update records set balance=cr_amt-withdrawl where
ACCONT_NO={}".format(acct)
c1.execute(ef)
conn.commit()
print("successfully deposited")

t=input("Do you want to continue y/n -")

print("=================================================
===============================")

if t=="y":
19 |Computer Science Narayana School
continue
else:
print("Thank you")
print("PLEASE CLOSE THIS FILE BEFORE
EXITING")
if r==2:
amt=int(input("Enter the money to withdraw:"))

print("=================================================
===============================")

ah="select BALANCE from records where


accont_no={}".format(acct)
c1.execute(ah)
m=c1.fetchone()
if amt >m[0]:
print("Your are having less than",amt)
print("Please try again")

print("=================================================
===============================")

else:
sr="update records set balance=balance - {} where
ACCONT_NO={}".format(amt,acct)

20 |Computer Science Narayana School


ed="update records set WITHDRAWL ={} where
ACCONT_NO={}".format(amt,acct)
c1.execute(ed)
c1.execute(sr)
conn.commit()
print("Successfully updatad")
y=input("do you want to continue y/n -")
if y=="y":
continue
else:
print("Thank you")
print("PLEASE CLOSE THIS FILE BEFORE
EXITING")

if r==3:
act=int(input("Enter the account number to be transferred
:"))

print("=================================================
===============================")

cb="select * from records where


ACCONT_NO={}".format(act)
c1.execute(cb)

21 |Computer Science Narayana School


c1.fetchall()
data=c1.rowcount
if data==1:
print(act ,"number exists")
m=int(input("Enter the money to be transferred :"))

print("=================================================
===============================")

ah="select BALANCE from records where


accont_no={}".format(acct)
c1.execute(ah)
c=c1.fetchone()
if m > c[0]:
print("You are having less than",m)
print("Please try again")

print("=================================================
===============================")

else:
av="update records set balance=balance-{} where
ACCONT_NO={}".format(m,acct)

22 |Computer Science Narayana School


cv="update records set balance=balance+{}
where ACCONT_NO={}".format(m,act)
w="update records set withdrawl=withdrawl+{}
where accont_no={}".format(m,acct)
t="update records set 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 transfered")
y=input("do you want to continue y/n -")
if y=="y":
continue
else:
print("Thank you")
print("PLEASE CLOSE THIS FILE BEFORE
EXITING")
if r==4:
ma="select balance from records where
accont_no={}".format(acct)
c1.execute(ma)
k=c1.fetchone()
print("Balance in your account=",k)

23 |Computer Science Narayana School


print("=================================================
===============================")

y=input("do you want to continue y/n -")


if y=="y":
continue
else:
print("Thank you")
print("PLEASE CLOSE THIS FILE BEFORE
EXITING")
if r==5:
i=int(input("Enter your new account number:"))
cb="select * from records where
ACCONT_NO={}".format(i)
c1.execute(cb)
c1.fetchall()
data=c1.rowcount
if data==1:
print("This number already exists")
print("Try again")

y=input("do you want to continue y/n -")


if y=="y":
continue
24 |Computer Science Narayana School
else:
print("Thank you")
print("PLEASE CLOSE THIS FILE BEFORE
EXITING")
else:
name=input("Enter your name")
ar="Update records set accont_no={} where
name='{}' and password={}".format(i,name,pas)
c1.execute(ar)
conn.commit()
print("Your new account number is ",i)
else:
print("Wrong password")

print("=================================================
===============================")

y=input("do you want to continue y/n -")


else:
print("your Account does not exists")

if op==3:
print("Exiting")
print("Please close this file before exiting.")
25 |Computer Science Narayana School
c1.close()

26 |Computer Science Narayana School


SCREEN SHOTS OF
EXECUTION

MAIN MENU

27 |Computer Science Narayana School


CREATE A NEW ACCOUNT

LOGIN

28 |Computer Science Narayana School


DEPOSITING MONEY

WITHDRAWING MONEY

29 |Computer Science Narayana School


TRANSFERRING MONEY

CHECKING BALANCE
30 |Computer Science Narayana School
CHANGING ACCOUNT NUMBER

CLOSING THE PROGRAM

31 |Computer Science Narayana School


32 |Computer Science Narayana School
LIMITATIONS

33 |Computer Science Narayana School


 The application has no provision to update the
date of deposit, transfer or withdrawl.

 The application does not have the provision to


check savings or current account.

34 |Computer Science Narayana School


BIBLIOGRAPHY

35 |Computer Science Narayana School


BOOKS:

 COMPUTER SCIENCE WITH PYTHON- BY


SUMITA ARORA
 COMPUTER SCIENCE WITH PYTHON- BY
PREETI ARORA
 PYTHON COOKBOOK

WEBSITES:
 www.geeksforgeeks.org

 https://docs.python.org/3/
 https://www.w3schools.com/python/

36 |Computer Science Narayana School

You might also like