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

Множественное наследование - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ hr-tree http://www.cyberforum.ru/cpp-beginners/thread763749.html
Здравствуйте, помогите пожалуйста найти алгоритмы для hr-деревьев. Я попытался реализовать, но только для r-деревьев?
C++ Определить четность чисел Определить четность чисел 541, 1024. http://www.cyberforum.ru/cpp-beginners/thread763729.html
C++ for. После каждого введенного значения выдавать накопленную сумму
нужно написать прогу,которая приглашает пользователя вводить числа. После каждого введенного значения прога должна выдавать накопленную сумму введенных значений. Прога должна завершаться при вводе 0.
нечётное, максимальное, минимальное, среднее C++
Найти максимальное и минимальное нечетные числа и их среднее арифметическое. #include <iostream> #include <conio.h> using namespace std; int main() { int arr = {1, 3, 2, 4, 8, 11, 5, 15, 8, 7}; int max = arr;
C++ Объявить массив указателей на функции-члены http://www.cyberforum.ru/cpp-beginners/thread763712.html
Надо объявить массив theArray из 10 указателей на функции-члены класса Car, получающие параметр типа int и возвращающие значения типа long. Книга приводит такой вариант: long (Car::*function)(int) theArray; То ли опять косячок, то ли я чего не пойму... Что тут означает слово function? По-моему на его месте и должно быть имя указателя. Может так правильно?: long (Car::*theArray)(int); ...
C++ Обнулить нечетные элементы матрицы Помогите плз. Обнулить нечетные элементы матрицы |1 7 6| |0 2 3 | |9 5 0| подробнее

Показать сообщение отдельно
polya
0 / 0 / 0
Регистрация: 27.05.2012
Сообщений: 26

Множественное наследование - C++

16.01.2013, 20:51. Просмотров 352. Ответов 2
Метки (Все метки)

Задание
Часть 1.
Создать иерархию типов "Точка" и подчинённые ему "Точка в двумерном пространстве" и
"Точка в трёхмерном пространстве".
Каждый из классов должен иметь конструкторы по умолчанию и с параметрами,
перегруженные операции ввода из потока и вывода в поток.
Создать несколько объектов каждого типа, показать, как производный объект
может использовать данные и методы базового класса.
Часть 2.
Добавить к иерархии объектов тип "Материальная точка" как точка,
обладающая массой и существующая на плоскости или в пространстве.

Вот то, что я написала:
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
class Point { //базовый класс "Точка".
protected:
    float a,b,c;//переменные базового класса.
public:
    Point();// по умолчанию
    Point(float,float,float);//с парамертами
    void print();//ввод в поток
    void input();//вывод из потока
};
 
class Point2x: public Point { //класс, подчиненный "Точка"
protected:
    float x,y;
public:
    Point2x ();
    Point2x(float ,float, float, float);
    Point2x(float aa,float bb, Point &Figure): Point(Figure) {
    x=aa; y=bb;
    };
    void print();
    void input();
};
 
class Point3x: public Point {//класс, подчиненный "Точка"
protected:
    float x,y,z;
public:
    Point3x();
    Point3x(float , float , float, float , float , float);
    Point3x(float aaa, float bbb, float ccc, Point &Figure): Point(Figure){
    x=aaa; y=bbb; z=ccc;
    }
    void print();
    void input();
};
 
 
//===========================================================
Point::Point(){
    a=5;
    b=6;
    c=8;
}
 
Point::Point(float aa, float bb, float cc) {
    a=aa;b=bb;c=cc;
}
 
void Point::input() {
     printf ("Point is: a=%f.2, b=%f.2, c=%f.2\n",a,b,c);
}
//=======================================================================
Point2x::Point2x(){
    x=y=0;
}
 
Point2x::Point2x(float x, float y, float aa, float bb){
    x=aa;y=bb;
}
 
void Point2x::print() {
    printf("\nВведите координаты\n");
    scanf("%f", &x);
    printf("\n");
    scanf("%f", &y);
    printf("\n");
}
 
void Point2x::input(){
    printf("\nКоординаты точки:\n");
    printf("%4.0f",x);
    printf("\n");
    printf("%4.0f",y);
    printf("\n");
}
//=================================================================
Point3x::Point3x(){
    x=y=z=0;
}
 
Point3x::Point3x(float x, float y, float z, float aaa, float bbb, float ccc){
    x=aaa;y=bbb;z=ccc;
}
 
void Point3x::print() {
    printf("\nВведите координаты\n");
    scanf("%f", &x);
    printf("\n");
    scanf("%f", &y);
    printf("\n");
    scanf("%f", &z);
    printf("\n");
}
void Point3x::input(){
    printf("\nКоординаты точки:\n");
    printf("%4.0f",x);
    printf("\n");
    printf("%4.0f",y);
    printf("\n");
    printf("%4.0f",z);
    printf("\n");
}
Не хватает второй части задания. Помогите с ней, пожалуйста.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru