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

Создать базовый класс Car (машина), характеризуемый торговой маркой (строка), числом цылиндров, мощностью - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не выводится ширина поля http://www.cyberforum.ru/cpp-beginners/thread1097098.html
#include <iostream> using namespace std; int main() { char a="Hello,world!"; cout.width(10); cout<<a<<endl; system("pause");
C++ Реализация функций интерфейса Есть класс с прототипами - интерфейс (верно?). Наследую от него два класса, А и В. Как мне в этих классах сделать разную реализацию унаследованных прототипов? http://www.cyberforum.ru/cpp-beginners/thread1097085.html
C++ Получить массив по заданному правилу
Друзья , прикладываю картинку с заданиями, может у кого есть исходники какой нибудь программки? , на ЛЮБОМ языке программирования, прошу,спасибо
Найти все натуральные числа, не превосходящие числа n, которые можно представить в виде суммы слагаемых C++
Заданы три натуральных числа a, b, n. Найти все натуральные числа, не превосходящие числа n, которые можно представить в виде суммы ( произвольного числа ) слагаемых, каждое из которых равно либо числу а, либо числу b. Помогите пожалуйста составить алгоритм, в любом виде. Что-то не доходит до меня как это решить. Реализую я сам т.к. на двух языках нужно.
C++ Приведение пользовательских типов http://www.cyberforum.ru/cpp-beginners/thread1097077.html
#include <iostream> using namespace std; class cl { friend cl operator+(cl& s2); public: cl(int d = 0, int c = 0) { dollars = d;
C++ Ошибка в классе Доброго времени суток! Недавно прочитал тему классы, посмотрел и инете видео-урок и решил закрепить материал созданием класса. Films.h #pragma once namespace films{ class Films { private: char* Name; подробнее

Показать сообщение отдельно
Casper-SC
 Аватар для Casper-SC
3468 / 1687 / 173
Регистрация: 27.03.2010
Сообщений: 4,824
Записей в блоге: 1
15.02.2014, 12:45     Создать базовый класс Car (машина), характеризуемый торговой маркой (строка), числом цылиндров, мощностью
Создать базовый класс Car (машина), характеризуемый торговой маркой (строка), числом цылиндров, мощностью. Определить методы переназначения и изменения мощности. Создать производный класс Lorry (грузовик), характеризуемый также грузоподъемностью кузова. Определить функции переназначения марки и изменения грузоподьемности.
Реализировать вывод на экран, методы получения значений полей и методы установки значений полей, а также необходимые конструкторы (если это не указано в задании явно). Конструкторы и методы обязательно должны проверять параметры на допустимость; в случае неправильных данных - выводить значение об ошибке и заканчивать работу. Преобразование в строку реализовать в виде функции преобразования string.



Надеюсь нигде не ошибся (я про память, вроде всё в стеке создаётся и при выходе из main уничтожается), так как С++ я так и не начал нормально учить, время не бесконечное, к сожалению . Как создаст тему (если создаст, можно туда код и перенести будет).
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
#include <iostream>
#include "Lorry.h"
 
using namespace std;
 
void DisplayCarInfo(Car cars[], int length, string infoSeparator);
void DisplayCarInfo(Car * car, string infoSeparator);
 
int main(int argc, char* argv[])
{
    setlocale(LC_ALL, "Russian");
 
    const int arrayLength = 2;
    Car cars[arrayLength] = { Car("Ford", 330u, 8u), Lorry("Scania", 750u, 12u, 30000u) };
    DisplayCarInfo(cars, arrayLength, "\r\n");
 
    system("pause");
    return EXIT_SUCCESS;
}
 
void DisplayCarInfo(Car cars[], int length, string infoSeparator)
{
    for (int i = 0; i < length; i++)
    {
        DisplayCarInfo(&cars[i], infoSeparator);
    }
}
 
void DisplayCarInfo(Car* car, string infoSeparator)
{
    cout << "Торговая марка: " << car->GetTradeMark() << " " << "Мощность: " << car->GetEnginePower() << infoSeparator << endl;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once
#include <string>
 
using namespace std;
 
class Car
{
protected:
    string _tradeMark;
    unsigned int _enginePower;
    unsigned int _numberOfCylinders;
 
public:
    Car(string tradeMark, unsigned int enginePower, unsigned int numberOfCylinders);
    ~Car(void);
 
    string GetTradeMark() const;
    void SetTradeMark(string name);
 
    unsigned int GetEnginePower()  const;
    unsigned int GetNumberOfCylinders();
};
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
#pragma once
#include "Car.h"
 
Car::Car(string tradeMark, unsigned int enginePower, unsigned int numberOfCylinders)
{
    _tradeMark = tradeMark;
    _enginePower = enginePower;
    _numberOfCylinders = numberOfCylinders;
}
 
Car::~Car(void)
{
}
 
string Car::GetTradeMark() const
{
    return _tradeMark;
}
 
void Car::SetTradeMark(string name)
{
    _tradeMark = name;
}
 
unsigned int Car::GetEnginePower() const
{
    return _enginePower;
}
 
unsigned int  Car::GetNumberOfCylinders()
{
    return _numberOfCylinders;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#pragma once
#include "car.h"
 
class Lorry :
    public Car
{
protected:
    unsigned int _weight_CarryingAbility;
 
public:
    Lorry(string tradeMark, unsigned int enginePower, unsigned int numberOfCylinders, unsigned int weight_CarryingAbility);
 
    ~Lorry(void);
 
    unsigned int GetWeight_CarryingAbility() const;
    void SetWeight_CarryingAbility(unsigned int weight);
};
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "Lorry.h"
 
Lorry::Lorry(string tradeMark, unsigned int enginePower, unsigned int numberOfCylinders, unsigned int weight_CarryingAbility)
    : Car(tradeMark, enginePower, numberOfCylinders)
{
    _weight_CarryingAbility = weight_CarryingAbility;
}
 
Lorry::~Lorry(void)
{
}
 
unsigned int Lorry::GetWeight_CarryingAbility() const
{
    return _weight_CarryingAbility;
}
 
void Lorry::SetWeight_CarryingAbility(unsigned int weight)
{
    _weight_CarryingAbility = weight;
}
Добавлено через 12 минут
Чуть поправил один момент
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru