import random
import math
main_menu = ["1 - Display Balance","2 - Withdraw Funds","3 - Deposit Funds","9 - Return Card"]
print("Welcome to Northern Frock")
print(main_menu[0])
print(main_menu[1])
print(main_menu[2])
print(main_menu[3])
atm_input_1 = int(input("Select 1 to display the current balance and the maximum amount available for withdrawal (In £10 increments) \n select 2 to view avalaible withdrawal amounts \n Select 3 to deposit funds \n select 9 to return card!"))
current_balance = random.randint(10,1000)
withdrawal_balance = math.floor(current_balance/10)*10
if atm_input_1 == 1:
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
elif atm_input_1 == 2:
sub_menu = ["1 - £10","2 - £20","3 - £40","4 - £60","5 - £80","6 - £100","7 - Other amount","8 - Return to main menu"]
print("Please select withdrawal amount")
print(sub_menu[0])
print(sub_menu[1])
print(sub_menu[2])
print(sub_menu[3])
print(sub_menu[4])
print(sub_menu[5])
print(sub_menu[6])
print(sub_menu[7])
sub_menu_input = int(input("Please select a number from the options below"))
if (sub_menu_input == 1 ):
if (withdrawal_balance >= 10):
print("£10 successfully withdrawed from account")
current_balance - 10
withdrawal_balance - 10
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 2 ):
if (withdrawal_balance >= 10):
print("£20 successfully withdrawed from account")
current_balance - 20
withdrawal_balance - 20
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 3 ):
if (withdrawal_balance >= 10):
print("£40 successfully withdrawed from account")
current_balance - 40
withdrawal_balance - 40
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 4 ):
if (withdrawal_balance >= 10):
print("£60 successfully withdrawed from account")
current_balance - 60
withdrawal_balance - 60
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 5 ):
if (withdrawal_balance >= 10):
print("£80 successfully withdrawed from account")
current_balance - 80
withdrawal_balance - 80
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 6 ):
if (withdrawal_balance >= 10):
print("£100 successfully withdrawed from account")
current_balance - 100
withdrawal_balance - 100
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif(sub_menu_input == 7):
withdrawal_request = int(input("Please enter amount you wish to withdraw (In a £10 sequence"))
if withdrawal_request % 10 == 0:
if withdrawal_balance >= withdrawal_request:
print("£",withdrawal_balance,"successfully withdrawed from account")
current_balance - withdrawal_request
withdrawal_balance - withdrawal_request
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else:print("ERROR Invalid withdrawal request")
elif atm_input_1 == 3:
deposit_request = int(input("Please enter the amount you wish to deposit into your account"))
current_balance = current_balance + deposit_request
withdrawal_balance = math.floor((withdrawal_balance + deposit_request)/10)*10
print("you have successfully deposited £",deposit_request,"into your account")
print("updated balances:")
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
elif atm_input_1 == 9:
print("Card returned , thank you for banking with Northern Frock good day")
quit()
else: print("Error invalid selection try again")问题(我可以完成所有的要求,但是在完成撤回/保存者/平衡检查之后,我很难让代码返回到主>菜单?)编写一个模拟基本ATM行为的程序。
请按照以下说明行事:
欢迎光临北衣
的子菜单。
如果输入了另一个值,则打印错误消息并再次打印菜单.
发布于 2022-04-29 01:49:16
解决方案是将整个程序放在一个无休止的循环中,如下所示:
import random
import math
while True:
main_menu = ["1 - Display Balance","2 - Withdraw Funds","3 - Deposit Funds","9 - Return Card"]
print("Welcome to Northern Frock")
print(main_menu[0])
print(main_menu[1])
print(main_menu[2])
print(main_menu[3])
atm_input_1 = int(input("Select 1 to display the current balance and the maximum amount available for withdrawal (In £10 increments) \n select 2 to view avalaible withdrawal amounts \n Select 3 to deposit funds \n select 9 to return card!"))
current_balance = random.randint(10,1000)
withdrawal_balance = math.floor(current_balance/10)*10
if atm_input_1 == 1:
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
elif atm_input_1 == 2:
sub_menu = ["1 - £10","2 - £20","3 - £40","4 - £60","5 - £80","6 - £100","7 - Other amount","8 - Return to main menu"]
print("Please select withdrawal amount")
print(sub_menu[0])
print(sub_menu[1])
print(sub_menu[2])
print(sub_menu[3])
print(sub_menu[4])
print(sub_menu[5])
print(sub_menu[6])
print(sub_menu[7])
sub_menu_input = int(input("Please select a number from the options below"))
if (sub_menu_input == 1 ):
if (withdrawal_balance >= 10):
print("£10 successfully withdrawed from account")
current_balance - 10
withdrawal_balance - 10
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 2 ):
if (withdrawal_balance >= 10):
print("£20 successfully withdrawed from account")
current_balance - 20
withdrawal_balance - 20
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 3 ):
if (withdrawal_balance >= 10):
print("£40 successfully withdrawed from account")
current_balance - 40
withdrawal_balance - 40
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 4 ):
if (withdrawal_balance >= 10):
print("£60 successfully withdrawed from account")
current_balance - 60
withdrawal_balance - 60
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 5 ):
if (withdrawal_balance >= 10):
print("£80 successfully withdrawed from account")
current_balance - 80
withdrawal_balance - 80
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif (sub_menu_input == 6 ):
if (withdrawal_balance >= 10):
print("£100 successfully withdrawed from account")
current_balance - 100
withdrawal_balance - 100
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else: print("Sorry you currrently have insufficent funds for a withdrawal")
elif(sub_menu_input == 7):
withdrawal_request = int(input("Please enter amount you wish to withdraw (In a £10 sequence"))
if withdrawal_request % 10 == 0:
if withdrawal_balance >= withdrawal_request:
print("£",withdrawal_balance,"successfully withdrawed from account")
current_balance - withdrawal_request
withdrawal_balance - withdrawal_request
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
else:print("ERROR Invalid withdrawal request")
elif atm_input_1 == 3:
deposit_request = int(input("Please enter the amount you wish to deposit into your account"))
current_balance = current_balance + deposit_request
withdrawal_balance = math.floor((withdrawal_balance + deposit_request)/10)*10
print("you have successfully deposited £",deposit_request,"into your account")
print("updated balances:")
print("Current Balance:","£",current_balance)
print("Withdrawal Balance:","£",withdrawal_balance)
elif atm_input_1 == 9:
print("Card returned , thank you for banking with Northern Frock good day")
quit()
else: print("Error invalid selection try again")然后,每当您想要停止程序,只需做一个“中断”语句,以退出循环。
https://stackoverflow.com/questions/72050373
复制相似问题