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

Создать абстрактный класс Vehicle - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Описать класс для работы с одномерным массивом строк фиксированной длины. Обеспечить следующие возможности: http://www.cyberforum.ru/cpp-beginners/thread832108.html
Описать класс для работы с одномерным массивом строк фиксированной длины. Обеспечить следующие возможности: • задание произвольных целых границ индексов при создании объекта; • обращение к отдельной строке массива по индексу с контролем выхода за пределы массива; • выполнение операций поэлементного сцепления двух массивов с образованием нового массива; • выполнение операций слияния двух...
C++ Стеки (функция, которая удаляет из стека первый отрицательный элемент, если такой есть) Здравствуйте! Помогите пожалуйста разработать функцию, которая удаляет из стека первый отрицательный элемент, если такой есть. Если не сложно, то ещё учитывая что: "Для организации стека нужно использовать структуру с функциями. Реализовать все операции со стеком через функции. В проекте объявления, определение функций и реализацию алгоритма выполнять в отдельных модулях." http://www.cyberforum.ru/cpp-beginners/thread832104.html
Массив целых чисел (Удалить все двузначные элементы,являющиеся простыми числами) C++
Удалить из массива целых чисел все двузначные элементы,являющиеся простыми числами .Найти среднее арифметическое элементов массива до и после удаления.Проверить,изменился ли максимальный элемент массива.
Не запускает задачу C++
В VS создал пустой проект win32, написал код #include <iostream> #include <vector> using namespace std; template <class T> void prepare_vector (vector <T>*v) { for (usingned i=o; i<v->size(); ++i)
C++ Определить функцию, находящую сумму элементов массива http://www.cyberforum.ru/cpp-beginners/thread832056.html
10. Определить функцию, находящую сумму элементов массива. Выполнить перегрузку функции для следующих типов параметров: 10.1. Одномерный массив типа int размерностью N. 10.2. Одномерный массив типа float размерностью N. 10.3. Одномерный массив типа double размерностью N. это сделать через монгофайловый проект(модуль) в С++...не могу понять как((
C++ Найти ошибку в части кода Доброго времени суток. В этой части кода не распознает If и then, выдает : If: идентификатор не найден; then: необъявленный идентификатор. Как задавать? void change(int a, int n, int m) { int i,j,k; for(int i=0; i<n; i++) { for(int j=0; j<m; j++) { подробнее

Показать сообщение отдельно
Olivеr
 Аватар для Olivеr
411 / 407 / 13
Регистрация: 06.10.2011
Сообщений: 830
09.04.2013, 01:32     Создать абстрактный класс Vehicle
Если что-то не понятно, то спрашивай. Остальные классы самостоятельно (по аналогии класса Plane). Компилятор MinGW.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#include <iostream>
#include <string>
#include <iomanip>
 
using namespace std;
 
unsigned table(23);
 
enum Colors {red = 0, black, blue, green, yellow, white, unknown};
 
class Color
{
public:
    Color(Colors _col): col(_col) {}
    string to_string()
    {
        string arr[] = {"red", "black", "blue", "green", "yellow", "white", "unknown"};
        return arr[col];
    }
private:
    Colors col;
};
 
class Vehicle
{
public:
    Vehicle():
        model(), enginePower(0), seats(0), maxSpeed(0), color(unknown),
        weight(0), releaseYear(0), price(0) {}
 
    Vehicle(const string&, float, unsigned, float, Color, float, unsigned, float);
 
    void setModel(const string &str) {  model = str;    };
    void setColor(Color col) {  color = col;    };
    void setPrice(float val) {  price = val;    };
    float getWeight() const {   return weight;  };
 
protected:
    string model;
    float enginePower;
    unsigned seats;
    float maxSpeed;
    Color color;
    float weight;
    unsigned releaseYear;
    float price;
 
    void print();
};
 
class Plane: public Vehicle
{
public:
    Plane(): Vehicle(), height(0), crewCount(0) {}
 
    Plane(float, unsigned, const string&, float, unsigned, float, Color, float, unsigned, float);
 
    void print();
    void setHeight(float val) { height = val;   };
    float getHeight() const {   return height;  };
 
private:
    float height;
    unsigned crewCount;
};
 
Vehicle::Vehicle(const string &_model, float _enPwr, unsigned _seats,
                 float _maxSpd, Color _col, float _weight, unsigned _relYear, float _price):
    model(_model), enginePower(_enPwr), seats(_seats), maxSpeed(_maxSpd), color(_col),
    weight(_weight), releaseYear(_relYear), price(_price) {}
 
Plane::Plane(float _height, unsigned _crews, const string &_model, float _enPwr, unsigned _seats,
            float _maxSpd, Color _col, float _weight, unsigned _relYear, float _price):
    Vehicle(_model, _enPwr, _seats, _maxSpd, _col, _weight, _relYear, _price),
    height(_height), crewCount(_crews) {}
 
void Vehicle::print()
{
    cout<<fixed<<setprecision(1);
    cout<<setw(table)<<left;
    cout<<setw(table)<<left<<"Модель: "<<model<<endl
        <<setw(table)<<left<<"Мощность двигателя: "<<enginePower<<endl
        <<setw(table)<<left<<"Мест: "<<seats<<endl
        <<setw(table)<<left<<"Максимальная скорость: "<<maxSpeed<<endl
        <<setw(table)<<left<<"Цвет: "<<color.to_string()<<endl
        <<setw(table)<<left<<"Вес: "<<weight<<endl
        <<setw(table)<<left<<"Год выпуска: "<<releaseYear<<endl
        <<setw(table)<<left<<"Цена: "<<price<<endl;
}
 
void Plane::print()
{
    Vehicle::print();
    cout<<setw(table)<<left<<"Высота: "<<height<<endl
        <<setw(table)<<left<<"Экипаж: "<<crewCount<<endl;
}
int main()
{
    setlocale(LC_CTYPE, "");
 
    Plane pl(50, 4, "Боинг 776", 10, 88, 800, white, 30, 1998, 3000000);
    pl.print();
    cout<<endl;
    pl.setColor(black);
    pl.setHeight(120);
    pl.print();
 
    cout<<endl<<pl.getWeight();
    return 0;
}
 
Текущее время: 19:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru