1. Главная
  2. Библиотека
  3. Программирование
  4. Проверить решение и исправить код Домашнее задание Вы р...
Решение задачи на тему

Проверить решение и исправить код Домашнее задание Вы разрабатываете простую программу для отслеживания и управления балансом криптовалюты на кошельке пользователя. Ваша программа должна иметь возможность обновлять баланс и проверять, достаточно ли

  • Программирование
  • #Основы алгоритмизации и программирования
  • #Структуры и алгоритмы обработки данных
Проверить решение и исправить код Домашнее задание Вы разрабатываете простую программу для отслеживания и управления балансом криптовалюты на кошельке пользователя. Ваша программа должна иметь возможность обновлять баланс и проверять, достаточно ли

Условие:

Проверить решение и исправить код

Домашнее задание

Вы разрабатываете простую программу для отслеживания и управления балансом криптовалюты на кошельке

пользователя. Ваша программа должна иметь возможность обновлять баланс и проверять, достаточно ли средств

для транзакций.

Условия задачи:

1. Глобальные переменные:

• btcbalance — начальный баланс в Bitcoin (BTC).

• ethbalance — начальный баланс в Ethereum (ETH).

2. Реализуйте функцию updatebalance(currency, amount), которая принимает название криптовалюты (BTC

или ETH) и сумму изменения баланса (добавление или вычитание баланса). Эта функция должна обновлять

соответствующую глобальную переменную и выводить новое значение баланса для указанной криптовалюты.

3. Реализуйте функцию canaffordtransaction(currency, amount), которая проверяет, достаточно ли средств на

балансе для совершения транзакции на указанную сумму. Эта функция должна использовать глобальные

переменные для проверки баланса и возвращать True или False, в зависимости от того, достаточно ли средств.

Эту функцию необходимо использовать в функции updatebalance



btcbalance = float(input("Введите количество BTC на кошельке: "))
ethbalance = float(input("Введите количество ETH на кошельке: "))

def updatebalance(currency: str, ammount: float):
global btcbalance
global ethbalance

customcurrency = input("Введите название криптовалюты: ")
customamount = float(input("Введите сумму, на которую нужно купить (положительное число) или продать (отрицательное число): "))

def canaffordtransaction(currency: str, ammount: float):
global btcbalance
global ethbalance

if "btc" in customcurrency:
btcbalance = btcbalance + customamount
elif "eth" in customcurrency:
ethbalance = ethbalance + customamount
# btcresult = btcbalance + customamount
if btcbalance < 0 and ethbalance < 0 :
print("Проверка не пройдена, баланс недостаточен")
else:
print("Проверка пройдена, баланс достаточен")

canaffordtransaction(customcurrency, customamount)

if btcbalance > 0:
if customcurrency in btcbalance:
btcbalance = btcbalance + customamount
elif customcurrency in ethbalance:
ethbalance = ethbalance + customamount

updatebalance(customcurrency, customamount)

Решение:

Давайте разберем ваш код и исправим его по шагам.

Шаг 1: Анализ кода


1. Глобальные переменные: btcbalance и ethbalance определены правильно.
2. Функция update_balance:
- Она принимает параметры currency и amount, но внутри функции вы запрашиваете их снова, что не нужно.
- Внутри функции вы вызываете canaffordtransaction, но не используете результат этого вызова для обновления баланса.
3. Функция canaffordtransaction:
- Она должна проверять, достаточно ли средств для транзакции, но логика проверки и обновления баланса перепутана.
- Также, вы не возвращаете значение из этой функции, что делает ее бесполезной для проверки условий.

Шаг 2: Исправление кода


Теперь давайте исправим код, чтобы он работал правильно.

1. : - Проверяет, достаточно ли средств для указанной валюты и суммы. Возвращает или . 2. : - Проверяет, достаточно ли средств с помощью . - Если средств достаточно, обновляет баланс и выводит новое значение. - Если средств недостаточно, выводит сообщение об ошибке. 3. : - Убраны лишние запросы на ввод внутри функции . Теперь код должен работать корректно и выполнять поставленные задачи.

Не нашел нужную задачу?

Воспользуйся поиском

Выбери предмет