I need to make an ATM program that allows the user to check his or her balance after entering his or her correct PIN and the maintaining balance is Php 8000. A message is shown when the balance is below PHP 8,000 for withdrawal and its remaining balance. Another message is shown when the balance is PHP 8,000 and above for deposit and its updated balance
I need to make an ATM program that allows the user to check his or her balance after entering his or her correct PIN and the maintaining balance is Php 8000. A message is shown when the balance is below PHP 8,000 for withdrawal and its remaining balance. Another message is shown when the balance is PHP 8,000 and above for deposit and its updated balance
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
Related questions
Question
PROBLEM: I need to make an ATM program that allows the user to check his or her balance after entering his or her correct PIN and the maintaining balance is Php 8000. A message is shown when the balance is below PHP 8,000 for withdrawal and its remaining balance. Another message is shown when the balance is PHP 8,000 and above for deposit and its updated balance.
The code:
import random
import sys
class ATM():
def __init__(self, name, account_number, balance = 0):
self.name = name
self.account_number = account_number
self.balance = balance
def account_detail(self):
print("\n----------ACCOUNT DETAIL----------")
print(f"Account Holder: {self.name.upper()}")
print(f"Account Number: {self.account_number}")
print(f"Available balance: Nu.{self.balance}\n")
def deposit(self, amount):
self.amount = amount
self.balance = self.balance + self.amount
print("Current account balance: Nu.", self.balance)
print()
def withdraw(self, amount):
self.amount = amount
if self.amount > self.balance:
print("Insufficient fund!")
print(f"Your balance is Nu.{self.balance} only.")
print("Try with lesser amount than balance.")
print()
else:
self.balance = self.balance - self.amount
print(f"Nu.{amount} withdrawal successful!")
print("Current account balance: Nu.", self.balance)
print()
def check_balance(self):
print("Available balance: Nu.", self.balance)
print()
def transaction(self):
print("""
TRANSACTION
*********************
Menu:
1. Account Detail
2. Check Balance
3. Deposit
4. Withdraw
5. Exit
*********************
""")
while True:
try:
option = int(input("Enter 1, 2, 3, 4 or 5:"))
except:
print("Error: Enter 1, 2, 3, 4, or 5 only!\n")
continue
else:
if option == 1:
atm.account_detail()
elif option == 2:
atm.check_balance()
elif option == 3:
amount = int(input("How much you want to deposit(Nu.):"))
atm.deposit(amount)
elif option == 4:
amount = int(input("How much you want to withdraw(Nu.):"))
atm.withdraw(amount)
elif option == 5:
print(f"""
printing receipt..............
******************************************
Transaction is now complete.
Transaction number: {random.randint(10000, 1000000)}
Account holder: {self.name.upper()}
Account number: {self.account_number}
Available balance: Nu.{self.balance}
Thanks for choosing us as your bank
******************************************
""")
sys.exit()
print("*******WELCOME TO BANK OF BHUTAN*******")
print("___________________________________________________________\n")
print("----------ACCOUNT CREATION----------")
name = input("Enter your name: ")
account_number = input("Enter your account number: ")
print("Congratulations! Account created successfully......\n")
atm = ATM(name, account_number)
while True:
trans = input("Do you want to do any transaction?(y/n):")
if trans == "y":
atm.transaction()
elif trans == "n":
print("""
-------------------------------------
| Thanks for choosing us as your bank |
| Visit us again! |
-------------------------------------
""")
break
else:
print("Wrong command! Enter 'y' for yes and 'n' for NO.\n")
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 2 steps with 3 images
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY