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

Перегрузка сложения для двумерных матриц - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ неразрешенный внешний элемент http://www.cyberforum.ru/cpp-beginners/thread260981.html
Помогите пожалуйста. Пробую писать на C++ написал лабу с помощью функций, по образцу из книжки по visual 6, а у меня 10 вот текст проги: #include <fstream> #include <iostream> #include <cctype> using namespace std; int find(const char *str); int main()
C++ Двумерные массивы - программа выводит множество цифр Нарооод!!Хээлп!! Проверьте пожалуйста правильный ли код?А то когда запускаешь можно вводить много цифр! #include <iostream> using namespace std; int main() { setlocale (LC_ALL,"rus"); int mass; int i, j; http://www.cyberforum.ru/cpp-beginners/thread260980.html
Структуры C++
Решить задачу, используя структуру point для хранения координат точки: Найти такую точку, что шар радиуса R с центром в этой точке содержит минимальное число точек заданного множества. Добавлено через 6 часов 32 минуты Уделите пожалуйста немного своего времени на эту задачку
C++ Найти элементы массива
Уважаемые господа помогите пожалуйста решить эту задачу. Самостоятельно у меня никак не получается. Задан массив целых чисел A Найти эллементы массива, содержащие единицы в 3 и 4 разрядах. Результат записать в файл res3-4txt. Благодарю всех, кто откликнулся. Если можно, привидите пожалуйста листинг программы. Я делаю всего первые шаги в программировании.
C++ Программа всегда выводит последний из всех телефонов АТС с заданной цифрой http://www.cyberforum.ru/cpp-beginners/thread260937.html
Подскажите, пожалуйста, где ошибка. Минимальную цену находит правильно. А номер телефона выводит неправильно. Всегда выводит последний из всех телефонов АТС с заданной цифрой. #include <iostream.h> #include<conio.h> #include<windows.h> void main() {int Phone; int Price; int x, y, z, min, firm;
C++ Двоичные файлы Работа с двоичными файлами. Создать файл, состоящий из n вещественных чисел. Вывести на экран все числа данного файла с нечетными порядковыми номерами, большие заданного числа. Добавлено через 7 часов 21 минуту Сделайте пожалуйста, кому не сложно Добавлено через 6 часов 25 минут ________ Добавлено через 3 часа 30 минут подробнее

Показать сообщение отдельно
Опа!!
14 / 14 / 0
Регистрация: 30.09.2009
Сообщений: 89
21.03.2011, 10:56  [ТС]     Перегрузка сложения для двумерных матриц
Спасибо, теперь все работает! Спасибо всем за помощь!

Вот окончательный вид класса Matrix: сложение матрицы, вычитанию матриц, транспонирование и нахождение определителя:

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
#include "stdafx.h"
#include <conio.h>
#include <iostream>
 
using namespace std;
 
 
class Matrix{
private:
    int aMas [3][3];
 
public:
    Matrix(){}
    void Generate();
    void Print();
    int Determinant();
    void Transpare();
 
    Matrix operator+ (const Matrix&);
    Matrix operator- (const Matrix&);
};
 
void Matrix::Generate() {
    for(int i = 0; i < 3;i++)
     for(int j = 0; j<3; j++)
      {
          cout<<"Vvedite ["<<i<<"]"<<"["<<j<<"]"<<" element massiva: ";
          cin>>aMas[i][j];
      }
}
 
void Matrix::Print() {
    for (int i = 0; i < 3; i++)
    {
        for (int j = 0; j < 3; j++)
        cout<<aMas[i][j]<<" ";
        cout<<endl;
    }
}
 
Matrix Matrix::operator+(const Matrix &rhs)
{
    Matrix result(*this);
 
    for (size_t i = 0; i < 3; ++i)
        for (size_t j = 0; j < 3; ++j)
            result.aMas[i][j] += rhs.aMas[i][j];
 
    return result;
}
 
Matrix Matrix::operator-(const Matrix &rhs)
{
    Matrix result(*this);
 
    for (size_t i = 0; i < 3; ++i)
        for (size_t j = 0; j < 3; ++j)
            result.aMas[i][j] -= rhs.aMas[i][j];
 
    return result;
}
 
int Matrix::Determinant(){
    int Det = 0;
    Det = ((aMas[0][0]*aMas[1][1]*aMas[2][2] + aMas[1][0]*aMas[0][2]*aMas[2][1] + aMas[0][1]*aMas[1][2]*aMas[2][0]) - 
          (aMas[2][0]*aMas[1][1]*aMas[0][2] + aMas[0][0]*aMas[1][2]*aMas[2][1] + aMas[1][0]*aMas[0][1]*aMas[2][2]));
    return Det;
}
 
void Matrix::Transpare()
{
    cout<<endl;
    for(int j=0; j<3; j++)
    {
        for(int i=0; i<3; i++)
        {
            cout<<aMas[i][j]<<" ";
        }
        cout<<endl;
    }
}
 
void main()
{
...
}
 
Текущее время: 17:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru