Форум программистов, компьютерный форум, киберфорум
Наши страницы

Дружественный класс (код внутри) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ B-trees http://www.cyberforum.ru/cpp-beginners/thread738828.html
Здравствуйте. Задача такова: вводится В*-дерево без функции, сразу числа. Надо только организовать поиск и показ данного дерева. Я пытался сделать, но не могу понять, что надо еще сделать....
C++ Сортировка (все отрицательные компоненты заменить их квадратами, оставив другие без изменения...) Если действительный вектор X (x1, x2, ..., xm) имеет хотя бы одну компоненту, которая меньше 2, то все отрицательные компоненты заменить их квадратами, оставив другие без изменения, в противном... http://www.cyberforum.ru/cpp-beginners/thread738826.html
Контейнер строк C++
Разработать контейнер строк hash_set, реализованный в виде хеш-таблицы. Контейнер должен содержать методы добавления, удаления и проверки на принадлежность, а также эффективную хеш-функцию. Контейнер...
C++ Поиск максимума(минимума)
Заданные действительные числа a1, a2, ..., an. Если при замене отрицательных членов последовательности a1, a2, ..., an их квадратами образуется последовательность, которая не уменьшается, определить...
C++ Программа с функциями и массивами http://www.cyberforum.ru/cpp-beginners/thread738798.html
Вычислить z=s1+s2/s1-s2, где S1 – сумма положительных элементов массива А (70), а S2 – сумма отрицательных элементов матрицы В (7х9). Суммы вычислять в одной подпрограмме.
C++ Заменить минимальный элемент массива А максимальным элементом массива В, а минимум массива В - максимальным элементом массива А. Заменить минимальный элемент массива А (5х8) максимальным элементом массива В (7х6), а минимум массива В - максимальным элементом массива А. подробнее

Показать сообщение отдельно
Demo0n
1 / 1 / 0
Регистрация: 28.10.2012
Сообщений: 86

Дружественный класс (код внутри) - C++

19.12.2012, 20:45. Просмотров 794. Ответов 11
Метки (Все метки)

вот я не знаю как сделать из этого дружественный класс, все тоже самое только с дружественным и еще виртуальный член добавить, как бы там вроде бы еще надо к нему абстрактный класс, я наслышал )
.h
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
#include <iostream>
using namespace std;
 
 
class Matrix 
{
private:
 
public:
     static int value[3][3];
 
     void Create_Matrix();
    void Print_Matrix(); 
    Matrix operator+(const Matrix &matrix); 
    Matrix operator*(const Matrix &matrix); 
    Matrix operator-(const Matrix &matrix); 
 
    Matrix() 
{
    for(int i = 0; i < 3; i++ ) 
        for(int j = 0; j < 3; j++ ) 
            value[i][j]=rand()%10; 
}
};
.cpp
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
#include <iostream>
#include "class.h"
#include <math.h>
using namespace std;
 
class m : public Matrix
{
public:
 
void Create_Matrix();
void Print_Matrix();
};
 
int Matrix::value[3][3];
 
void Matrix::Create_Matrix() 
{
    for(int i = 0; i < 3; i++ ) 
        for(int j = 0; j < 3; j++ ) 
            value[i][j]=rand()%10; 
}
 
void Matrix::Print_Matrix() 
{
    cout << "__________\n";
    for(int i = 0; i < 3; i++ ) 
    {
        for(int j = 0; j < 3; j++ ) 
        {
            cout.width(4); 
            cout << value[i][j]; 
        }
    cout << "\n"; 
    }
cout << "__________\n";
};
 
Matrix Matrix::operator+ (const Matrix &matrix) 
{
    Matrix temp;
      for (int i = 0; i <3; i++)
        for (int j = 0; j <3; j++)
            temp.value[i][j] = value[i][j] + matrix.value[i][j]; 
    return temp; 
};
Matrix Matrix::operator- (const Matrix &matrix)
{
    Matrix temp;
    for(int i= 0; i<3;i++)
        for(int j=0;j<3;j++)
            temp.value[i][j]=value[i][j] - matrix.value[i][j];
    return temp;
};
Matrix Matrix::operator* (const Matrix &matrix)
{
    Matrix mnog;
    for(int i=0;i<3;i++)
        for(int j=0;j<3;j++)
            mnog.value[i][j]=value[i][j]*matrix.value[i][j];
    return mnog;
};
  
int main () 
{
 
    Matrix a,b,c,d,e; 
    a.Create_Matrix(); 
    cout << "Matrix A[3][3]: " <<endl;
    a.Print_Matrix(); 
    b.Create_Matrix(); 
    cout << "Matrix B[3][3]: " <<endl;
    b.Print_Matrix(); 
    c=a+b; 
    cout << "Matrix A+B[3][3]: "<<endl;
    c.Print_Matrix(); 
    e=a-b;
    cout << "Matrix A-B[3][3]:"<<endl;
    e.Print_Matrix();
    d=a*b;
    cout<<"Matrix A*B[3][3]:"<<endl;
    d.Print_Matrix();
    system("pause");
    
    
}
0
Вложения
Тип файла: rar matrix.rar (3.40 Мб, 2 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru