Team Name: Classic Four
Project Type: ICS Major Project
Team Members:
- π§βπ» Harsh Chaudhari (B24CM1027)
- π§βπ» Brijesh Thakkar (B24ME1018)
- π§βπ» Suvarn Vijay Patil (B24CS1074)
- π§βπ» Faiz Raise (B24BB1010)
This project is a simulation of an ATM (Automated Teller Machine) system using C programming. It aims to help users experience and understand basic banking operations such as:
- Cash Withdrawal
- Cash Deposit
- Balance Inquiry
- PIN Change
- Transaction Logging
It also simulates a realistic terminal experience using typewriter-style text display and securely manages data using file handling for persistent storage.
The main objective of this project is to replicate the working of a basic ATM system with:
- User-friendly interaction
- PIN authentication
- File-based storage for balance and PIN
- Logging of all transactions with timestamps
-
π User Authentication
- 3 attempts for 4-digit PIN entry
- Default PIN =
0000
-
πΈ Cash Withdrawal
- Balance updated and logged after withdrawal
-
π° Cash Deposit
- Deposit any valid amount to account
- Balance updated and logged
-
π§Ύ Balance Check
- Display current balance (read from file)
-
π Change PIN
- User can change their PIN after confirmation
-
π Transaction Logging
- All transactions (withdrawal, deposit, balance check, PIN change) are logged in
transaction_log.txtwith timestamp
- All transactions (withdrawal, deposit, balance check, PIN change) are logged in
-
ποΈ Typewriter Text Effect
- Enhances user experience through a character-by-character printing effect
The program uses the following files:
| File Name | Purpose |
|---|---|
balance.txt |
Stores the account balance |
pin.txt |
Stores the 4-digit user PIN |
transaction_log.txt |
Logs each transaction with details |
If any of these files are missing, the system loads default values to ensure smooth functioning.
- Functions and Modular Design
- File Handling
- Strings and Character Arrays
- Loops (
while,for) - Conditional Statements (
if-else,switch) - Error Handling & Input Validation
- PIN verification before accessing account
- Max 3 attempts for PIN entry
- All actions logged for accountability and security