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

производный класс 3D массив - C++

Восстановить пароль Регистрация
 
swetka
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 3
09.03.2012, 21:01     производный класс 3D массив #1
Помогите пожалуйста. На основе класса «Матрица» создать производный класс «3D массив». Класс содержит
массив, каждый элемент которого является матрицей. В классе должны быть переопределены
функции ввода и вывода значений массива. В классе должна быть определена функция поиска
суммы элементов массива.

Основа программы
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
111
//Файл main.cpp. Драйвер класса Matrix.
#include<iostream.h>
#include"matrix.h"
main( )
{
    Matrix A; 
    int B, i, j;
    cout<<"Matrix B="<<endl;
    A.vvod();
 
    A.operator--();
    cout<<"Matrix --"<<endl;
    
        A.operator++();
    cout<<"Matrix ++" <<endl;
 
    A.print();
        
           
   cout<<"Trans Matrix B=" <<endl;
    A.trans();
   
    system("Pause");
    return 0;
} 
 
//Файл Matrix.cpp. Реализация класса Matrix.
#include<iostream.h>
#include<stdlib.h>
#include<time.h>
#include"Matrix.h"
void Matrix::vvod()
{ 
     srand(time(NULL));
     for (int i=0; i<3; i++)
     for (int j=0; j<3; j++)
{B[i][j]=rand()%100; }
} 
 
 
void Matrix::operator--( ){
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 3; j++)
{
cout << B[i][j] << ", ";
}
cout << endl;
}
}
 
void Matrix::operator++( ){
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 3; j++)
{
cout << B[i][j]-1 << ", ";
}
cout << endl;
}
}
 
 
 
void Matrix::trans()
 
{
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 3; j++)
{
cout << B[j][i] << ", ";
}
cout << endl;
}}
 
  
 
void Matrix::print( ){
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 3; j++)
{
cout << B[i][j] << ", ";
}
cout << endl;
}
}
 
// Файл Matrix.h. Описание класса Matrix.
#ifndef MATRIX_H
#define MATRIX_H
class Matrix{
             friend ostream& operator <<( ostream &, Matrix &);
    friend istream& operator >>(istream &, Matrix &);
        friend void operator ++(Matrix &);
        friend void operator --(Matrix &);
    public:
      
        void operator=(Matrix &);
            void operator++();
        void operator--();
        void vvod ();
        void print (); 
        void trans();
    
        
    private:
    int B[3][3];
};
#endif;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2012, 21:01     производный класс 3D массив
Посмотрите здесь:

C++ производный класс
Базовый класс и производный... C++
Есть производный класс и базовый; при чём производный использует только ЧАСТЬ ресурсов базового, правильно ли это? C++
C++ Добавить производный класс
создать производный класс C++
Разработать класс и производный класс C++
производный класс C++
C++ Написать класс строка и производный класс, ее шифрующий

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1477 / 1053 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
09.03.2012, 21:28     производный класс 3D массив #2
Боюсь что задание кривое. Насделование должно выражать факт того, что наследник является родителем и везде, где требуется указатель\ссылка на родителя можно подставлять указатель\ссылку на наследника. Так вот трехмерная матрица интов не является двухмерной матрицей интов (вырожденные случаи рассматривать не стоит). Если следовать заданию и делать трехмерную матрицу наследованием, то получится франкенштейн. Рассмотрите реализацию трехмерной матрицы не с использованием наследования от двухметрной, а за счет включения.

Т.е. из исходного задания подчеркнутое удалить:
На основе класса «Матрица» создать производный класс «3D массив». Класс содержит
массив...
Yandex
Объявления
09.03.2012, 21:28     производный класс 3D массив
Ответ Создать тему
Опции темы

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