Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Tiina
1

Создание класса методом GetDescription ()

22.11.2011, 10:43. Показов 778. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые форумчане,
Помогите девушке написать программу.
Условия:

У нас есть три вида транспортных средств: автомобили, тракторы и мопеды. У каждого типа есть свои номер (1=CAR, 2=TRACTOR, 3=MOPED, ...). Создать иерархию классов, в которой представлено каждое транспортное средство.

Каждый автомобиль имеет двигатель и колеса: У автомобиля и трактора четыре колеса и четырехцилиндровый двигатель, у мопеда одноцилиндровый двигатель и два колеса. При создании транспортного средства следует также создать и его компоненты.

Создайте классам транспортных средств метод GetDescription (), который должен выдавать для каждого типа транспортного средства его характеристики и список частей.

Создайте класс в котором статическим методом можно создавать предварительно обозначенный тип транспортного средства. Класс следит шаблоном завода (Factory Pattern, Factory Method Pattern)

Пример класса:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class ShapeFactory {
 public:
   static Shape *create(int type) {
    switch (type) {
      case CIRCLE:
        return new Circle;
 
      case TRIANGLE:
        return new Triangle;
 
      ...
 
      default:
        return NULL;
    }
  }
Подсказка: У каждого класса транспортных средств должен иметь общий базовый класс (Shape пример кода).

В стране, где транспортные средства производятся, имеется автомобильный налог. Создайте метод для расчета налога, если известно, что он состоит из платы "выбросов" и "дорожного налога":
а) каждый цилиндр должен нести 15 единиц загрязнения.
b) владельцы мопедов освобождаются от уплаты за "выбросы".
в) если у транспортного средства более чем на 2 колеса, то за каждое следующее колесо должны платить 7 единиц дорожного налога.
c) для тракторов дорожный налог в два раза больше.

В тестовой программе создать vector из 33 автомобилей и рассчитать общее налоговое бремя. Допустим, что при этом типы транспортных средств разные.

Классы разместить в модулях. В программе не должны быть "видемых" классов Car, Tractor, Engine и так далее. Иерархия классов в базовом классе (транспортное средство) должен быть виден. Создание модулей обязателен.

d) фабричный метод не должен возвращать НУЛЛ значение (как в примере класса ShapeFactory). Когда завод получает параметр неизвестного типа, кодировать дефектный ответ специальным классом, при котором методы не должны ничего делать (Null Pattern Object).
е) элементы автомобиля, чтобы быть "элегантной", то есть. Например, должно быть легко создать. 6-цилиндровый двигатель или трехколесные мопеды - или транспортные средства у которых плата "выбросов" и "дорожный налог" разные в зависимости от задачи.
f) обеспечить возможность в дополнение к отечественному производству автомобилей -Китайский завод. Китайский завод для получения налоговых скидок производят трехколесный трактор и двухцилиндровые автомобили.
h) при создании транспортного средства, необходимо сначала найти подходящий завод (отечественные заводы, китайские заводы), а затем каждый завод отвечает за создание корректного автомобиля. Используйте абстрактный шаблон завода (Factory Pattern, Factory Method Pattern).
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2011, 10:43
Ответы с готовыми решениями:

Вызов метода внутреннего класса методом внешнего класса
Не могу разобраться как реализовать вложенный класс и как его вызвать. Занимаюсь по Лафоре, про...

Построение описания класса, создание и уничтожение объектов этого класса
Построить описание класса, содержащего информацию о почтовом адресе организации. Предусмотреть...

Создание объекта класса с полем являющимся объектом другого класса
Bill a; cin>>a;//тут я ввел с помощью перегруженного оператора ElementSpiska c; //поля у...

Создание указателя типа базового класса на экземпляр производного класса
Добрый день! Иногда видел коды, где создавался указатель типа базового класса на объект класса -...

0
22.11.2011, 10:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.11.2011, 10:43
Помогаю со студенческими работами здесь

Создание класса-списка на основе кода со списком без класса
Здравствуйте. Не могли бы вы показать, как оформить этот код в виде класса. Смысл задания: это...

Явное создание экземпляра класса и явная специализация шаблона класса
Всем добрый день! Не могу разобраться - эти две технологии дают один и тот же результат? В каких...

Возможно ли создание объекта шаблонного класса в функции этого класса?
Доброго времени суток, уважаемые форумчане :) Мне по лабам задали задание - реализовать шаблон...

Пример класса с конструктором и деструктором, создание экземпляра класса через конструктор с параметрами
Привести пример класса с конструктором и деструктором, созданием экземпляра класса с помощью...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru