0% found this document useful (0 votes)
25 views12 pages

Final Comp

The document describes a C programming project to simulate an ATM machine. It allows users to withdraw, deposit, and check their balance. The project has sections for objectives, methodology, design, code appendix, and conclusion. The program demonstrates basic ATM functionality but has limitations for real-world use.

Uploaded by

Sushan Khadka
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)
25 views12 pages

Final Comp

The document describes a C programming project to simulate an ATM machine. It allows users to withdraw, deposit, and check their balance. The project has sections for objectives, methodology, design, code appendix, and conclusion. The program demonstrates basic ATM functionality but has limitations for real-world use.

Uploaded by

Sushan Khadka
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/ 12

XAVIER INTERNATIONAL COLLEGE

KALOPUL, KATHMANDU

PROJECT - COMPUTER
“ATM MACHINE PROGRAMMED IN C”

SUBMITTED BY: SUBMITTED TO:


BIKASH POUDEL
STREAM: SCIENCE
GRADE:12 ………………...
SECTION: SD34 SIGNATURE
Acknowledgement

I would like to take this opportunity to acknowledge everyone who helped me to


complete this project in every step and in every problem that arise while working
with project.

This project has been monumental for our understanding of the C programming
language and its various methods and syntaxes. It has broadened our horizons of
understanding about the language. Our teacher, Mr. Bikash Poudel has been very
helpful in this project. So, I thank him from the bottom of my heart.

I am also very thankful to my parents who have boosted me morally with their
continuous support. All of this is being possible because of my parents who
brought me up to this place. Their guidance and support helped me every time to
complete this project.

I am very thankful to my friends also who helped me to complete this project when
any problems arise. Their innovative idea was very useful for me to complete this
project.

I am also grateful to the college, Xavier International College for providing us with
the resources to understand this programming language.

1
Student Deceleration

I hereby declare that the project entitled “ATM machine made in C” is made by me,
Sushan Khadka under the guidance and supervision of Mr. Bikash Poudel sir, A
Computer Science tutor in Xavier International College.
I also declare that this project is the result of my own hard work, research
and knowledge. This project has not been submitted to any other institution and is
not a result of plagiarism.

Name: Sushan Khadka

Grade: 12

Section: SD34

Symbol No: 0370

…………………………………………………..

SUSHAN KHADKA

2
Table of Contents
Acknowledgement 1
Student Deceleration 2
Introduction 4
Objective 5
Methodology 6
Design 7
Appendix 8
Conclusion 11
References 11

3
Introduction

In this project, A fully functional virtual ATM machine has been developed
that replicates the applications of real world ATM machines. It can check the
balance of the user's bank account, Withdraw money and deposit money. To
access all these features, the user has to enter his unique 4 digit pin. The
user can select the “exit” option if he doesn’t want to make any transaction.

The main intension of the project given is to make an ATM machine interface using
C language coding. By following the intension, the code written is an ATM like
interface that allows user to perform Withdrawal, Deposit and Balance Check by
the help of an ATM. The user can deposit or withdraw money in the multiples of
1000’s or check their balance. The user can continue using the ATM or can exit
after each action. The code uses do-while loop to make user to use the ATM or exit
it. In the code if-else statement and switch case is also used. By the help of switch
case, user can choose whether he or she wants to withdraw money, deposit money
or check the balance.

This code can serve as a starting point for building a more complex banking
system. The program can be expanded to include more features such as fund
transfers, bill payments, and account statements. Overall, this program
demonstrates the basics of ATM functionality and can be used as a building block
for developing more advanced banking applications.

4
Objective

The main objective of this project is to broaden the understanding of the C


programming language and also broaden our concepts of programming as a
whole. Its purpose is to increase our experience on writing programs that
have real world applications.

The objective of this project is to create a banking system that meets the
basic needs of customers while also being easy to use, reliable and secure.
The code provided is an essential part of the system and will be considered
as a building block for developing a more complex banking system with
more and more features.

This project was done with the main focus to show the users how a banking
system and ATM works which they use in real life.

5
Methodology
This project has been made by utilizing various features of the C
programming language. Here is a methodology of this program.

1. Initialize the program by setting the user's PIN and account balance to
predefined values.
2. Display a welcome message to the user.
3. Prompt the user to enter their 4-digit PIN.
4. Verify the user's PIN by comparing it to the predefined value. If the
PIN is correct, proceed to step 6. If the PIN is incorrect, allow the user
to enter their PIN again. Repeat this step until the user enters the
correct PIN or exceeds the maximum number of attempts.
5. If the user exceeds the maximum number of attempts, terminate the
program. Otherwise, proceed to step 6.
6. Display a menu of options to the user: checking their balance,
withdrawing cash, depositing cash, or exiting the program.
7. Prompt the user to select an option from the menu.
8. If the user selects "Check balance", display their current balance and
return to step 6.
9. If the user selects "Withdraw cash", prompt them to enter the amount
of cash they wish to withdraw.
10. If the requested withdrawal amount is greater than their current
balance, display an error message indicating insufficient funds and
return to step 6.
11. If the requested withdrawal amount is within their available balance,
subtract the withdrawal amount from their account balance, display a
message indicating the successful withdrawal and their new balance,
and return to step 6.
12. If the user selects "Deposit cash", prompt them to enter the amount of
cash they wish to deposit.
13. Add the deposited amount to their account balance, display a message
indicating the successful deposit and their new balance, and return to
step 6.
14. If the user selects "Exit", display a goodbye message and terminate the
program.
15. If the user selects an invalid option, display an error message
indicating that the option is invalid and return to step 6.
16. Repeat steps 6-15 until the user chooses to exit the program.

6
Design
Below to describe about how this ATM system works a flow chart have been
made.

Customer Bank ATM Bank Management


System

select to perform

various tasks

Complete Authentication

Process

Explaining about the flow chart, at first a customer goes to the Bank ATM.
After that the user enters the name which is associated with the bank
account. The name goes to the bank management system and authenticates
the user.After that user can select the option which the user wants to do and
the process completes. After the process completes the user gets the receipt.

7
Appendix
The screenshot of source code of the given project and the output of the
code i.e., of ATM interface is kept below

8
The output of this source code is kept below.

9
10
Conclusion

In conclusion, this program demonstrates the basic functionalities of an


ATM system. However, it has limitations and potential issues that need to be
addressed for real-world implementation. For instance, the program
assumes that the user always inputs valid data and does not consider
situations such as account verification, transaction limits, or error handling.
Additionally, the program uses floating-point numbers to represent
currency, which can result in rounding errors and cause issues with
accuracy.

Overall, this program provides a foundation for building more complex ATM
systems while highlighting the importance of considering security, accuracy,
and error handling in financial applications.

References
Computer Science Book (Issued By CDC) Nepal-2078

google.com, wikipedia.com, Bikash Poudel (Lecturer, Xavier International


College)

11

You might also like