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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
wlad281093
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 5
#1

Динамические матрицы - C++

08.04.2012, 19:18. Просмотров 887. Ответов 1
Метки нет (Все метки)

  1. разработать класс для работы с одной или несколькими матрицами, размерности которых являются полями класса. В конструкторе создать динамическую матрицу, а в деструкторе освободить па-мять. Предусмотреть методы для ввода, вывода динамической матрицы и в зависимости от варианта один или несколько методов для её обработки. По усмотрению преподавателя в класс можно включить методы, реализующие задачи из нескольких вариантов;
    предусмотреть цветной вывод результатов;
  2. там, где это можно, желательно использовать указатели для организации циклов. Но при этом надо учитывать, что строки динамической матрицы в памяти располагаются не рядом;
  3. перестановки строк матрицы выполнять с помощью указателей.


Задание:
В динамической матрице с одинаковым количеством элементов в каждой строке получить номера строк, элементы каждой из которых образуют монотонно убывающую последовательность.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2012, 19:18     Динамические матрицы
Посмотрите здесь:

Динамические матрицы. - C++
Программа, которая вводит с клавиатуры целое число n, выделяет память для трех динамических матриц a,b,c; заполняет матрицы a, b числами ...

динамические массивы.матрицы - C++
пожалуйста,помогите решить задачу на языке Си(( Дана матрица размера M  N. Продублировать 2 раза столбец матрицы, содержащий ее...

Двумерные динамические массивы-матрицы (выделение памяти) - C++
Помогите пожалуйста,разобраться. В динамической памяти сначала выделяется память для указателей на соответствующие двумерные массивы(строки...

Поменять местами указанные столбцы заданной матрицы (динамические массивы) - C++
ДИНАМИЧЕСКИЕ МАССИВЫ. Поменять местами столбцы матрицы с номерами i и j.

Динамические массивы. Найти сумму элементов матрицы, которые имеют заданную разницу индексов - C++
Добрый вечер. Помогите с заданием, я что-то вообще не могу понять как его делать. Найти сумму элементов матрицы, которые имеют...

Динамические списки - C++
Всем привет. Подскажите пожалуста идеи. Дано стек, разработать функцию, которая формирует два новых стеки: первая содержит числа из...

Динамические массивы: - C++
Найти максимальный элемент матрицы.

Динамические массивы - C++
Составить программу, в которой 1)организовать ввод матрицы размера nxn из целых чисел; 2)вычислить минимальный элемент побочной...

Динамические изображения С++ - C++
Дали задание создать 2 программки которые бы изображали взрыв и движение глиссера. В нете по графике в С ничего не мог найти как это...

динамические переменные - C++
1. Составьте программу, в которой 8-10 переменных разной длины, например, строки символов, размещаются в ДРП, причем размещение чередуется...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
User1990
26 / 26 / 2
Регистрация: 03.11.2009
Сообщений: 158
08.04.2012, 19:34     Динамические матрицы #2
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
template <typename T> class multi_array {
     class help_class {
        protected:
            T* h_ptr;
 
        public:
            help_class() : h_ptr(NULL){   }
 
            
            void set_pos( T* dop_h_ptr) {  h_ptr = dop_h_ptr;} 
 
            T& operator[] (const unsigned  int y) {
                return *(h_ptr + y);
            }
 
            const T& operator[] (const unsigned int y) const {
                return *(h_ptr +y );
            }
     };
 
    protected:
        T*    m_ptr;
        help_class * m_hlp;
        int nrows;
        int ncols;
    public:
        multi_array(const unsigned int x, const unsigned int y) {
            nrows = x;
            ncols = y;
            m_ptr = new T[x * y];
            m_hlp = new help_class();
        }
 
        ~multi_array() {
            delete m_hlp;
            delete[] m_ptr;
        }
 
        help_class& operator[] (const unsigned int x) {
            m_hlp->set_pos(m_ptr + x * ncols);
            return *m_hlp ;
        }
 
        const help_class& operator[] (const unsigned int x) const {
            m_hlp->set_pos(m_ptr + x * ncols);  
            return *m_hlp;;
        }
};
шаблон создания матриц
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru