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

Создать класс Matrix и класс Size - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ вычисления суммы строк элементов матрицы http://www.cyberforum.ru/cpp-beginners/thread542311.html
Помогите пожалуйста!!!! на языке программирования Си, Составить программу вычисления суммы строк элементов матрицы.
C++ Удалить все гласные из строки Здравствуйте. вы не подскажите,как можно удалить все гласные из строки http://www.cyberforum.ru/cpp-beginners/thread542267.html
C++ Составить программу вычисления функции..
Составить программу вычисления функции f(t)=t^2+2,5t/t+1, аргументы вводятся с клавиатуры. (Используя при этом заголовок функции, начало функции, тело функции)
C++ Дописать программу, на тему "строковые типы данных".
Само задание звучит так: Дан текст, состоящий не менее чем из пяти слов. Сформировать строку, в которую попадут только те слова, где одинаковые буквы встречаются более двух раз. Например, молоко. Смог только разбить строку по словам, и каждое слова в массив. Осталось только реализовать подсчёт одинаковых букв и проверку условия, что текст состоит не менее чем из пяти слов и где одинаковые...
C++ Добавление элемента в конец односвязного списка - ошибка http://www.cyberforum.ru/cpp-beginners/thread542255.html
Всем привет! Собственно, задача такая: написать функцию, добавляющую элемент в конец связного списка. Вроде всё правильно, компилируется, но ничего не выводится, только появляется окошко "Закрытие программы ... ". Что не так? #include <iostream> using namespace std; //////////////////////////////////////////////////////////////// struct link {
C++ Дана строка символов. Расставить введенные латинские символы в алфавитном порядке. Помогите с решением пожалуйста. подробнее

Показать сообщение отдельно
eji
116 / 116 / 6
Регистрация: 17.09.2010
Сообщений: 288
08.04.2012, 17:28     Создать класс Matrix и класс Size
Не выходит нормально перегрузить оператор ++:
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#include <iostream>
#include <stdio.h>
#include <conio.h>
 
using namespace std;
 
class Size
{
    int column;
    int row;
    public:
    Size()
    {
        column = 1;
        row = 1;
    }
    Size(int i, int j)
    {
        column = i;
        row = j;
    }
    void set(int i, int j)
    {
        column = i;
        row = j;
    }
    int get_column()
    {
        return column;
    }
    int get_row()
    {
        return row;
    }
};
 
class Matrix
{
    Size sz;
    int **values;
    void init_matrix(int value = 0)
    {
        try
        {
            values = new int*[sz.get_row()];
        }
        catch(bad_alloc xa)
        {
            exit(1);
        }
        for(int i = 0; i < sz.get_row(); i++)
        {
            try
            {
                values[i] = new int[sz.get_column()];
            }
            catch(bad_alloc xa)
            {
                exit(1);
            }
        }
        for(int i = 0; i < sz.get_row(); i++)
        {
            for(int j = 0; j < sz.get_column(); j++)
            {
                values[i][j] = value;
            }
        }
    }
    public:
    Matrix()
    {
        sz = Size();
        init_matrix();
    }
    Matrix(Size s, int value)
    {
        sz = s;
        init_matrix(value);
    }
    ~Matrix()
    {
        delete [] values;
    }
    int get_rows()
    {
        return sz.get_row();
    }
    int get_columns()
    {
        return sz.get_column();
    }
    int get_value(int i, int j)
    {
        if(i < 0 || i >= sz.get_row()) return 0;
        if(j < 0 || j >= sz.get_column()) return 0;
        return values[i][j];
    }
    Matrix operator++()
    {
        for(int i = 0; i < sz.get_row(); i++)
        {
            for(int j = 0; j < sz.get_column(); j++)
            {
                values[i][j]++;
            }
        }
        return *this;
    }
};
 
int main(int argc, char *argv[])
{
    cout << "Demo\n";
    Size sz(5, 5);
    Matrix m(sz, 2);
    for(int i = 0; i < sz.get_row(); i++)
    {
        for(int j = 0; j < sz.get_column(); j++)
        {
            cout << m.get_value(i, j)
                 << "\t";
        }
        cout << endl;
    }
    ++m;
    cout << "----------------------------------------\n";
    for(int i = 0; i < sz.get_row(); i++)
    {
        for(int j = 0; j < sz.get_column(); j++)
        {
            cout << m.get_value(i, j)
                 << "\t";
        }
        cout << endl;
    }
    system("pause");
    return 0;
}
Кто то может подсказать где ошибка?
Миниатюры
Создать класс Matrix и класс Size  
 
Текущее время: 04:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru