Я определил функцию под названием Cash_machine с параметрами для введенного PIN-кода и суммы снятия. Он проверяет ПИН-код и обеспечивает достаточный баланс перед разрешением вывода, обновляет баланс и предоставляет соответствующие сообщения для каждого сценария.
Однако я изо всех сил пытаюсь расширить функцию для обработки нескольких учетных записей (каждая учетная запись может быть представлена в виде словаря с ключами для account_number, PIN-кода и баланса), добавить функцию, позволяющую пользователям изменять свой PIN-код через банкомат, вести журнал всех транзакций для каждой учетной записи, включая снятие средств и изменение PIN-кода, внедряя ежедневный лимит снятия средств для каждой учетной записи, добавляя комплексную ошибку обработка для управления неправильными вводами и потенциальными нарушениями безопасности (например, повторяющимися неправильными вводами PIN-кода), а также административные функции, такие как добавление новых учетных записей, загрузка денег в банкомат и просмотр состояния устройства.
Вот мой код:
Код: Выделить всё
pin = 4352
withdrawal_amount = 10
def cash_machine(pin, withdrawal_amount):
global attempts
attempts = 0
def pin_func():
pin = input("Please enter your PIN: ")
if pin == "4352":
print("PIN accepted")
balance_func()
else:
print("This is the incorrect PIN.")
global attempts
attempts += 1
if attempts >= 3:
print("We have seised your card for security reasons \nHave a lovely day.")
else:
pin_func()
def balance_func():
global balance, withdrawal_amount
balance = 10000
withdrawal_amount = input("How much money would you like to withdraw?\n")
if int(withdrawal_amount)
Подробнее здесь: [url]https://stackoverflow.com/questions/79882256/how-do-i-extend-my-python-cash-machine-program-to-handle-multiple-accounts[/url]
Мобильная версия