Форум программистов, компьютерный форум CyberForum.ru

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Как грамотно конвертировать число в строку? http://www.cyberforum.ru/cpp-beginners/thread389081.html
LPWSTR lpszW = L"СТРОКА1 " + mas + " \t" + L" строка2 " + i+1 ; mas число типа int i+1 число типа int
C++ Как пользоваться MSDN Купил себе MSDN но не могу понять как им пользоваться, где приведены примеры Можете объяснить как им пользоваться http://www.cyberforum.ru/cpp-beginners/thread389080.html
C++ Считывание с файла !
Всем доброе врямя суток ! Помогите пожалуйста мне надо чтобы прога считывала из файла не до пробела а запихивала в символьный массив прям всю информачию из файла . #include <conio.h> #include <stdlib.h> #include<stdio.h> main() { char s ,strf; FILE *f; scanf("%s",s);
Классы в С++ C++
Придумайте задачу на тему "Классы в С++"
C++ поиск палиндромов в текстовом файле http://www.cyberforum.ru/cpp-beginners/thread389056.html
Помогите плиз!!!!! Задан текстовый файл input.txt. Требуется определить строки этого файла, содержащие максимальную по длине подстроку-палиндром. Если таких строк несколько, найти первые 10. Результат вывести на консоль в форме, удобной для чтения Добавлено через 11 часов 54 минуты Ну помогите, кто-нибудь!!!!!
C++ В чем разница между вектором и массивом Я учу язык С/С++ и хотел у вас спросить в чем разница между вектором и массивом ? кроме тогдо что вектор создается vector<int> m; а массив m; подробнее

Показать сообщение отдельно
Tiina
Сообщений: n/a
22.11.2011, 10:43     Создание класса методом GetDescription ()
Уважаемые форумчане,
Помогите девушке написать программу.
Условия:

У нас есть три вида транспортных средств: автомобили, тракторы и мопеды. У каждого типа есть свои номер (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).
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru