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

Создать абстрактный класс Vehicle. На его основе реализовать классы: - C++

Восстановить пароль Регистрация
 
ArtemTamkin
0 / 0 / 0
Регистрация: 03.04.2013
Сообщений: 3
06.11.2013, 11:17     Создать абстрактный класс Vehicle. На его основе реализовать классы: #1
Создать абстрактный класс Vehicle. На его основе реализовать классы Car (автомобиль), Bicycle (велосипед) и Lorry (грузовик). Классы должны иметь возможность задавать и получать параметры средств передвижения (цена, максимальная скорость, год выпуска и т.д.). Наряду с общими полями и методами, каждый класс должен содержать и специфичные для него поля.
10
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.11.2013, 11:17     Создать абстрактный класс Vehicle. На его основе реализовать классы:
Посмотрите здесь:

C++ Создать абстрактный базовый класс Vehicle
C++ задача на абстрактные классы (создать абстрактный базовый класс с виртуальными методами вычисления ф-ции y=f(x) в заданной точке х)
C++ Определить базовый класс и на его основе производные классы
Создать абстрактный класс Vehicle C++
C++ Создать абстрактный класс с виртуальной функцией вычисления нормы и модуля; определить производные классы с собственными функциями
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
fridi
-8 / 40 / 1
Регистрация: 21.09.2009
Сообщений: 145
06.11.2013, 11:19     Создать абстрактный класс Vehicle. На его основе реализовать классы: #2
ArtemTamkin в комерц
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,337
Завершенные тесты: 1
06.11.2013, 11:33     Создать абстрактный класс Vehicle. На его основе реализовать классы: #3
Цитата Сообщение от fridi Посмотреть сообщение
в комерц
А может кому-нибудь захочется попрактиковаться?

ArtemTamkin, или ждите (возможно бесконечно долго) или сами пробуйте делать, а наработки выкладывайте. Ну или как предложил fridi.
lemegeton
 Аватар для lemegeton
2910 / 1339 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
06.11.2013, 16:09     Создать абстрактный класс Vehicle. На его основе реализовать классы: #4
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
#include <iostream>
 
class Vehicle {
 public:
  Vehicle(long price, int maxSpeed, int year)
    : price(price), maxSpeed(maxSpeed), year(year) {}
  long getPrice() const { return price; }
  int getMaxSpeed() const { return maxSpeed; };
  int getYear() const { return year; }
 private:
  long price;
  int maxSpeed;
  int year;
};
 
class Car : public Vehicle {
 public:
  Car(long price, int maxSpeed, int year, int power)
    : Vehicle(price, maxSpeed, year), power(power) {}
  int getPower() const { return power; }
 private:
  int power;
};
 
class Bicycle : public Vehicle {
 public:
  Bicycle(long price, int maxSpeed, int year, int typeId)
    : Vehicle(price, maxSpeed, year), typeId(typeId) {}
  int getTypeId() const { return typeId; }
 private:
  int typeId;
};
 
class Lurry : public Vehicle {
 public:
  Lurry(long price, int maxSpeed, int year, double capacity)
    : Vehicle(price, maxSpeed, year), capacity(capacity) {}
  double getCapacity() const { return capacity; }
 private:
  double capacity;
};
 
int main() {
  Vehicle v = Lurry(120000, 139, 2011, 7500.5);
  std::cout << v.getMaxSpeed() << std::endl;
  return 0;
}
ArtemTamkin
0 / 0 / 0
Регистрация: 03.04.2013
Сообщений: 3
06.12.2013, 08:52  [ТС]     Создать абстрактный класс Vehicle. На его основе реализовать классы: #5
Благодарю, в скором испробую на работоспособность
zss
Модератор
Эксперт С++
 Аватар для zss
5953 / 5558 / 1787
Регистрация: 18.12.2011
Сообщений: 14,204
Завершенные тесты: 1
06.12.2013, 09:02     Создать абстрактный класс Vehicle. На его основе реализовать классы: #6
В задании сказано, что базовый класс должен быть абстрактным,
т.е. в нем должна быть хотя бы одна чистая виртуальная функция.
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
class Vehicle {
 public:
  Vehicle(long price, int maxSpeed, int year)
    : price(price), maxSpeed(maxSpeed), year(year) {}
  virtual long getPrice()=0;
  int getMaxSpeed() const { return maxSpeed; };
  int getYear() const { return year; }
 private:
  long price;
  int maxSpeed;
  int year;
};
 
class Car : public Vehicle {
 public:
  Car(long price, int maxSpeed, int year, int power)
    : Vehicle(price, maxSpeed, year), power(power) {}
  int getPower() const { return power; }
  long getPrice(){return price*power;}
 private:
  int power;
};
 
class Bicycle : public Vehicle {
 public:
  Bicycle(long price, int maxSpeed, int year, int typeId)
    : Vehicle(price, maxSpeed, year), typeId(typeId) {}
  int getTypeId() const { return typeId; }
  long getPrice(){return price+typeId;}
 private:
  int typeId;
};
 
class Lurry : public Vehicle {
 public:
  Lurry(long price, int maxSpeed, int year, double capacity)
    : Vehicle(price, maxSpeed, year), capacity(capacity) {}
  double getCapacity() const { return capacity; }
 private:
  double capacity;
};
 
int main() {
  Vehicle* v =new Lurry(120000, 139, 2011, 7500.5);
  std::cout << v->getPrice() << std::endl;
   delete v;
  v=new Bicycle(120000, 139, 2011, 2013);
  std::cout << v->getPrice() << std::endl;
  return 0;
}
Yandex
Объявления
06.12.2013, 09:02     Создать абстрактный класс Vehicle. На его основе реализовать классы:
Ответ Создать тему
Опции темы

Текущее время: 03:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru