Постановка задачи «Кошелек студента». Владелец кошелька может выполнить следующие действия с кошельком: добавить деньги в кошелек, взять ден...
Условие:
Постановка задачи «Кошелек студента». Владелец кошелька может выполнить следующие действия с кошельком: добавить деньги в кошелек, взять деньги, пересчитать, посмотреть, дать деньги в долг. Источниками пополнения кошелька могут быть родители, также это может быть зарплата или стипендия. Задание: Разработать и описать объектную модель Кошелька сту
Решение:
Для решения задачи "Кошелек студента" можно создать следующую объектную модель:
-
Класс "Кошелек":
- Свойства:
- balance (баланс кошелька) - числовое значение, представляющее текущую сумму денег в кошельке.
- Методы:
- addMoney(amount) - добавляет указанную сумму денег в кошелек.
- takeMoney(amount) - снимает указанную сумму денег из кошелька, если на балансе достаточно средств.
- recount() - пересчитывает баланс кошелька, учитывая все транзакции.
- viewBalance() - выводит текущий баланс кошелька.
- lendMoney(amount) - дает указанную сумму денег в долг, уменьшая баланс кошелька.
- Свойства:
-
Класс "Источник пополнения":
- Свойства:
- name (название источника) - строковое значение, представляющее название источника пополнения (например, "родители", "зарплата", "стипендия").
- Методы:
- getName() - возвращает название источника пополнения.
- Свойства:
Таким образом, объект "Кошелек" будет иметь свойство balance для хранения текущего баланса и методы для выполнения различных операций с кошельком. Объект "Источник пополнения" будет иметь свойство name для хранения названия источника и метод для получения этого названия.
Пример использования:
# Создание объекта "Кошелек"
wallet = Кошелек()
# Добавление денег в кошелек
wallet.addMoney(100) # Добавляем 100 рублей
# Снятие денег из кошелька
wallet.takeMoney(50) # Снимаем 50 рублей
# Пересчет баланса кошелька
wallet.recount()
# Просмотр текущего баланса кошелька
wallet.viewBalance()
# Дача денег в долг
wallet.lendMoney(20) # Даем в долг 20 рублей
# Просмотр текущего баланса кошелька после операций
wallet.viewBalance()
Обратите внимание, что в данной модели не учитывается способ получения денег от родителей, зарплаты или стипендии. Это может быть реализовано с помощью дополнительных классов или методов, которые будут взаимодействовать с объектом "Кошелек".