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

Напиши программу на 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 м². Теперь программа готова к использованию! Вы можете создавать объекты классов и взаимодействовать с ними, как показано в примере использования.

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

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

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