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

Двумерная динамическая матрица - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Структура и осуществление доступа к ее элементам http://www.cyberforum.ru/cpp-beginners/thread693122.html
Получить программную реализацию задачи обработки таблицы дан- ных. Таблица должна представлять собой массив элементов соответствую- щего вида. Таблица считается заданной, то есть значения элементов табли- цы указываются непосредственно в тексте программы. В таблице собраны сведения об успеваемости студентов одной группы по некоторой дисциплине. Информация об отдельном студенте включает в...
C++ Поясните по указателям Добрый день товарищи. У меня вопрос: #include <iostream> using namespace std; int main() { http://www.cyberforum.ru/cpp-beginners/thread693120.html
C++ Динамический массив структур
Необходимо создать структуру, и сделать динамический массив структур. Фиксированный массив получается сделать, а вот с динамическим массивом где-то ошибка. Подскажите, пожалуйста, где ошибка. #include <iostream> using namespace std; int mysize=3; struct movies {
C++ Состав проекта С++
Добрый вечер, Уважаемые Программисты! Возник такой вопрос, ответ на который гугл мне не дал, поиск по форумы тоже промолчал. При создание проекта весь код разноситься по разным файлам с расширением .h и .cpp. Так вот вопрос состоит в том, что писать в заголовочные файлы, а что в .cpp. Из курса колледжа помню, что мы разбивали в h - вроде писали классы и их тела. И еще вопрос как они...
C++ Самая популярная бесплатная среда С++ http://www.cyberforum.ru/cpp-beginners/thread693082.html
Какая среда C++ самая популярная и самая используемая сейчас и она бесплатная ?
C++ Скетч Arduino -> C++ Здравствуйте! Скажите, пожалуйста, можно ли как то перевести скетч Ардуино в код C++? Заранее спасибо! подробнее

Показать сообщение отдельно
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429
09.11.2012, 19:11  [ТС]     Двумерная динамическая матрица
Цитата Сообщение от Vourhey Посмотреть сообщение
Ну а удаление, верю, ты добавишь сам.
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
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
using namespace std;
typedef vector<vector<int>>::iterator matrix_iterator;
/*
Row - Subject - строки
Columns - Object - столбцы
 
*/
class Matrix
{
private:
    vector<vector<int>> v;
public:
    Matrix();
    void AddSubject();
    void AddObject();
    void DelSubject();
    void DelObject();
    void PrintOut(ostream& OutStream);
};
void Matrix::DelObject()
{
    matrix_iterator iterlvl2;
    vector< int >::iterator iterlvl1;
        for (iterlvl2=v.begin();iterlvl2 != v.end();iterlvl2++) {
            iterlvl1 = (*iterlvl2).begin();
            (*iterlvl2).pop_back(); 
        }
}
void Matrix::DelSubject()
{
    v.pop_back();
}
Matrix::Matrix()
{
    v.push_back(vector<int>(1));
}
void Matrix::AddSubject()
{
    v.push_back(vector<int>(v.back().size()));
}
void Matrix::AddObject()
{
    for(matrix_iterator it = v.begin(); it != v.end(); ++it)
        it->push_back(0);
}
void Matrix::PrintOut(ostream& OutStream)
{
    for(matrix_iterator it = v.begin(); it != v.end(); ++it)
    {
        copy(it->begin(), it->end(), ostream_iterator<int>(OutStream, " "));
        OutStream<<endl;
    }
}
int main()
{
    Matrix a;
    a.AddObject();
    a.AddObject();
    a.AddObject();
 
    a.AddSubject();
    a.AddSubject();
    a.AddSubject();
    a.AddSubject();
    a.PrintOut(cout);
    cout<<"after\n\n";
    a.DelSubject();
    a.PrintOut(cout);
 
    cout<<"after\n\n";
    a.DelObject();
    a.PrintOut(cout);
    
}
удаление последних столбцов\строк написал, да.
а как сделать удаление i-го столбца\строки? как передаваемое число в метод сопоставить с итератором? не получается
 
Текущее время: 23:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru