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

Класс Матриц ( исправьте Ошибки плз) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ пара точек http://www.cyberforum.ru/cpp-beginners/thread69200.html
В множестве А1 в трехмерном пространстве найти пару точек с максимальным расстоянием между ними(использовать структуру) В множестве точек А1 в трохвимірному просторны найти пару точек с максимальным расстоянием между ними ( использовать структуру). Зарание спасибо.
C++ Подскажите что с этим делать на С++ Помогите с написанием задач на С++ пожалуйста: 1. Написать программу, которая вычисляет среднее арифметическое ненулевых элементов введенного с клавиатуры массива целых чисел. Ниже приведен рекомендуемый вид экрана во время работы программы. Введите элементы массива в одной строке и нажмите "Enter". - 23 0 45 -5 12 0 -2 30 0 64 Сумма элементов массива: 184 Количество ненулевых элементов:... http://www.cyberforum.ru/cpp-beginners/thread69194.html
C++ решите программы по одномерным массивам на языке С++
1.Массив заполнить с помощью генератора случайных чисел в интервале в количестве 15 элементов. Сформировать массив Р из элементов массива А кратных 7 и найти их произведение. 2.В одномерном массиве A подсчитать количество нулевых элементов, заменить их значением квадрата минимального элемента, затем вычислить сумму элементов полученного массива. Напечатать исходный и результирующий массивы в...
C++ Написать программу для обработки двумерного массива.
Сформировать и вывести на экран заданный двумерный массив (для заполнения массива использовать формулу). 10 20 30 40 20 30 40 50 30 40 50 60 40 50 60 70 Помогите пожалуйста
C++ Удаление незначащих нулей в строке http://www.cyberforum.ru/cpp-beginners/thread69133.html
Всем добрый день. Пытаюсь преобразовать число в строку с помощью функции CString::Format(). Вроде удаление незначащих нулей можно настроить во входных параметрах этой функции. Никто не подскажет как? (желательно с примером)
C++ Работа с текстовыми файлами.Удалить строки. Доброе время суток. Нужна помощь : есть текстовый файл вида: asd qwe zxc rty fgh Нужно переписать строки которые начинаются на "a" и "z" в другой текстовый файл, или остальные были просто удалены из этого файла. подробнее

Показать сообщение отдельно
Pavel1133
3 / 3 / 0
Регистрация: 12.10.2009
Сообщений: 81

Класс Матриц ( исправьте Ошибки плз) - C++

01.12.2009, 13:44. Просмотров 732. Ответов 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
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
#include <iostream>
#include <iomanip>
#include <fstream>
#include <stdlib.h>
using namespace std;
 
class Matrix{
    friend ostream &operator << (ostream &,const Matrix &);
    friend istream &operator >> (istream &,Matrix &);
public:
    Matrix(int=0,int=0);
    Matrix operator + (Matrix &);
    Matrix operator * (Matrix &);
    Matrix operator * (int);
    Matrix operator ++(int);
private:
        int nCols;
    int nRows;
    int **array;
};
 
ostream &operator<<(ostream &output, const Matrix &matrix)
{
    for(int j=0;j<matrix.nCols;j++){
        for(int k=0;k<matrix.nRows;k++){
            output<<setw(5)<<matrix.array[j][k]<<setw(5);
        }
        output<<endl;
    }
    return output;
}
 
istreaam &operator>>(istream &input,Matrix &matrix)
{
    for(int j=0;j<matrix.nCols;j++){
        for(int k=0;k<matrix.nRows;k++){
            input>>matrix.array[j][k];
        }
    }
    return input;
}
 
Matrix Matrix::operator +(matrix &matrix){
    int i=Matrix.nCols;
    int j=Matrix.nRows;
    if((i!=nCols)||(j!=nRows)){
        cout<<"nesootvetstvie matric"<<endl;
        exit(1);
    }
    else{
        Matrix Sum(i,j);
        for(int a=0;a<i;a++)
            for(int b=0;b<j;b++)
                Sum.array[a][b]=array[a][b]+matrix.array[a][b];
        return Sum;
    }
}
 
Matrix Matrix::operator *(Matrix &matrix){
    int i=matrix.nCols;
    int j=matrix.nRows;
    if(nRows!=i){
        cout<<" nesootvetstvie matric"<<endl;
        exit(1);
    }
    else {
        Matrix Mul(nCols,j);
        for(int a=0;a<nCols;a++){
            for(int b=0;b<j;b++){
                Mul.array[a][b]=0;
                for(int c=0;c<i;c++){
                    Mul.array[a][b]=Mul.array[a][b]+((array[a][c])*(matrix.array[c][b]));
                }
            }
        }
        return Mul;
    }
}
 
Matrix Matrix::operator *(int scal){
    int i=nCols;
    int j=nRows;
    Matrix Mults(i,j);
    for(int a=0;a<i;a++)
        for(int b=0;b<j;b++)
            Mults.array[a][b]=(array[a][b])*scal;
    return Mults;
}
 
Matrix::Matrix(int str,int stolb){
    array=new int * [str];
    for(int i=0;i<str;i++)
        array[i]=new int[stolb];
    nCols=str;
    nRows=stolb;
}
 
Matrix Matrix::operator ++ (){
    int i=nCols;
    int j=nrows;
    Matrix Summ(i,j);
    for(int a=0;a<i;a++)
        for(int b=0;b<j;b++)
            Summ.array[a][b]=(array[a][b])+5;
    return Summ;
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru