Дима заранее начал думать о жизни после школы, а точнее — об учебе в университете. Один из признаков будущей самостоятельной жизни по мнению Димы — это личный счет в банке. Не изменяя своим привычкам, Дима решил отработать полученные знания о магических
- Банковское дело
Условие:
Дима заранее начал думать о жизни после школы, а точнее — об учебе в университете. Один из признаков будущей самостоятельной жизни по мнению Димы — это личный счет в банке. Не изменяя своим привычкам, Дима решил отработать полученные знания о магических методах на данном примере. Для этого был создан класс BankAccount с одним приватным свойством balance и тремя магическими методами — init(), repr() и add(): balance (целое число). Текущий баланс на счете. init() — метод для инициализации объекта класса, принимает на вход параметр balance repr() — метод для строкового представления объекта класса, возвращает строку в формате «BankAccount(<баланс>)» add() — метод, позволяющий увеличить баланс на определенное число other, которое передается в качестве аргумента Помогите Диме дописать код для решения задачи. Заполните пропуски в коде, вставляя нужные фрагменты из таблицы.
Реализовав класс BankAccount, Дима подумал, что может только пополнять счет в банке, но нужно также добавить логику снятия денег со счета, причем так, чтобы баланс счета не мог стать отрицательным, иначе у Димы будут большие проблемы.
Дополните класс BankAccount из предыдущего задания, чтобы его внутренние свойства и методы выглядели следующим образом:
Свойства:
balance (целое число). Текущий баланс на счете.
Методы:
init() — метод для инициализации объекта класса, принимает на вход параметр balance
repr() — метод для строкового представления объекта класса, возвращает строку в формате «BankAccount(<баланс>)»
add() — метод, позволяющий увеличить баланс на определенное число other, которое передается в качестве аргумента. Внутри должна быть проверка, что other является либо целым числом (int), либо дробным (float). Если проверка не пройдена, то на экран выводится строка «Некорректное пополнение счета».
radd() — метод, работающий в паре с add(). Позволяющий увеличить баланс на определенное число other, не учитывая порядок операндов.
sub__() — метод, позволяющий уменьшить баланс на определенное число other, которое передается в качестве аргумента. Внутри должна быть проверка, что other является либо целым числом (int), либо дробным (float). Если проверка не пройдена, то на экран выводится строка «Некорректное списание средств со счета». Также должна быть проверка, что уменьшение баланса на значение other не сделает баланс отрицательным. Если проверка не пройдена, то на экран выводится строка «Баланс не может стать отрицательным!»
Решение:
Для решения задачи, давайте создадим класс BankAccount, который будет включать все необходимые методы и проверки. Вот шаги, которые мы будем выполнять:
1. Определим класс BankAccount.
2. Реализуем метод init() для инициализации баланса.
3. Реализуем метод repr() для строкового представления объекта.
4. Реализуем метод add() для пополнения счета с проверкой типа и значений.
5. Реализуем метод radd() для поддержки операции сложения в любом порядке.
6. Реализуем метод для снятия средств с проверками.
Теперь давайте напишем код:
Похожие задачи
Не нашел нужную задачу?
Воспользуйся поиском
Выбери предмет
- Правоохранительные органы
- Пожарная безопасность
- Парикмахерское искусство
- Природообустройство и водопользование
- Почвоведение
- Приборостроение и оптотехника
- Промышленный маркетинг и менеджмент
- Производственный маркетинг и менеджмент
- Процессы и аппараты
- Программирование
- Право и юриспруденция
- Психология
- Политология
- Педагогика
- Трудовое право
- Теория государства и права (ТГП)
- Таможенное право
- Теория игр
- Текстильная промышленность
- Теория вероятностей
- Теоретическая механика
- Теория управления
- Технология продовольственных продуктов и товаров
- Технологические машины и оборудование
- Теплоэнергетика и теплотехника
- Туризм
- Товароведение
- Таможенное дело
- Торговое дело
- Теория машин и механизмов
- Транспортные средства