Напиши программу на Python. Человек и Дом Есть Человек, характеристиками которого являются: имя, возраст, наличие денег, наличие собственного жилья. Человек может предоставить информацию о себе, заработать деньги, купить дом. Также есть Дом, свойства
- Программирование
Условие:
Напиши программу на Python.
Человек и Дом
Есть Человек, характеристиками которого являются: имя, возраст, наличие
денег, наличие собственного жилья. Человек может предоставить
информацию о себе, заработать деньги, купить дом.
Также есть Дом, свойства которого – площадь и стоимость. Для дома можно
применить скидку на покупку. Также есть Небольшой Типовой Дом,
обязательной площадью 40 кв. м.
Напишите программу на языке программирования Python, которая
реализует классы Human, House и SmallHouse.
Класс Human имеет два статических поля defaultname и defaultage.
Создайте метод init(), который принимает два параметра name и age.
Для этих параметров задайте значения по умолчанию, используя свойства
defaultname и defaultage. В методе init() определите четыре свойства:
публичные name и age, приватные money и house.
Реализуйте справочный метод defaultinfo(), который будет выводить
статические поля defaultname и defaultage.
Реализуйте приватный метод makedeal(), который будет отвечать за
техническую реализацию покупки дома: уменьшать количество денег на
счету и присваивать ссылку на только что купленный дом. В качестве
аргументов данный метод принимает объект дома и его цену.
Реализуйте метод earnmoney(), увеличивающий значение свойства money.
Реализуйте метод buyhouse(), который будет проверять, что у человека
достаточно денег для покупки, и совершать сделку. Если денег
недостаточно – нужно вывести предупреждение. Параметры метода: ссылка
на дом и размер скидки.
Класс House:
Создайте метод init() и определите внутри него два динамических
свойства area и price. Свои начальные значения они получают из
параметров метода init().
Создайте метод finalprice(), который принимает в качестве параметра
размер скидки и возвращает цену с учетом данной скидки.
Класс SmallHouse наследует функционал от класса House. Внутри класса
SmallHouse переопределите метод init() так, чтобы он создавал объект
с площадью 40 м2.
Решение:
Давайте создадим программу на Python, которая реализует классы Human, House и SmallHouse в соответствии с вашим описанием. Я объясню каждый шаг, чтобы вы могли понять, как мы пришли к решению.
Шаг 1: Определение класса Human
1. Создадим класс
Human, который будет иметь два статических поля: defaultname и defaultage.2. Реализуем метод
init(), который принимает параметры name и age, и задает значения по умолчанию.3. Определим публичные свойства
name и age, а также приватные свойства money и house.4. Реализуем метод
default_info(), который выводит значения по умолчанию.5. Реализуем приватный метод
make_deal(), который будет отвечать за покупку дома.6. Реализуем метод
earn_money(), который увеличивает количество денег.7. Реализуем метод
buy_house(), который проверяет, достаточно ли денег для покупки дома.Шаг 2: Определение класса House
1. Создадим класс
House, который будет иметь динамические свойства area и price.2. Реализуем метод
init(), который принимает параметры для площади и цены.3. Реализуем метод
final_price(), который возвращает цену с учетом скидки.Шаг 3: Определение класса SmallHouse
1. Создадим класс
SmallHouse, который наследует от класса House.2. Переопределим метод
init(), чтобы площадь всегда была 40 м².Теперь давайте напишем код:
1. : - Статические поля и задают значения по умолчанию. - Метод инициализирует свойства человека. - Метод выводит информацию по умолчанию. - Приватный метод уменьшает деньги и присваивает дом. - Метод увеличивает количество денег. - Метод проверяет, достаточно ли денег для покупки. 2. : - Метод инициализирует площадь и цену дома. - Метод рассчитывает цену с учетом скидки. 3. : - Переопределяет метод , чтобы площадь всегда была 40 м². Теперь программа готова к использованию! Вы можете создавать объекты классов и взаимодействовать с ними, как показано в примере использования.
Похожие задачи
Не нашел нужную задачу?
Воспользуйся поиском
Выбери предмет
- Правоохранительные органы
- Пожарная безопасность
- Парикмахерское искусство
- Природообустройство и водопользование
- Почвоведение
- Приборостроение и оптотехника
- Промышленный маркетинг и менеджмент
- Производственный маркетинг и менеджмент
- Процессы и аппараты
- Программирование
- Право и юриспруденция
- Психология
- Политология
- Педагогика
- Трудовое право
- Теория государства и права (ТГП)
- Таможенное право
- Теория игр
- Текстильная промышленность
- Теория вероятностей
- Теоретическая механика
- Теория управления
- Технология продовольственных продуктов и товаров
- Технологические машины и оборудование
- Теплоэнергетика и теплотехника
- Туризм
- Товароведение
- Таможенное дело
- Торговое дело
- Теория машин и механизмов
- Транспортные средства