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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
AleksandraMV
0 / 0 / 0
Регистрация: 20.02.2009
Сообщений: 12
#1

Создание динамического многомерного массива со списком - C++

23.02.2009, 10:26. Просмотров 1126. Ответов 6
Метки нет (Все метки)

Уважаемые мужчиины!

С 23 февраля Вас!

Помогите, плиззззз!!!! очень надо

Надо описать структуру или класс по созданию матрицы Q размером mxn, где каждый элемент этой матрицы - это список из двух чисел и каждой паре однозначно сопоставляется еще и матрица размерностью 4х4. Длина списков в разных ячейках матрицы Q-разная

заранее Большое спасибо
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2009, 10:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создание динамического многомерного массива со списком (C++):

Создание динамического многомерного массива - C++
Esche odin vopros po etoi temie: Kak v C++ sozdat dynamicheskiy MNOGOMERNIY massiv tipa long *a = new long ;no eto ne katit. Ne...

Сортировка многомерного динамического массива - C++
В общем задание создать массив и выполнить сортировку строк по убыванию. Причем создание, сортировку и печать массива сделать отдельными...

Создание динамического массива - C++
объясните пожалуйста вот эту часть // sozdanie dinamicheskogo massiva m*n a=(int**)malloc(m*sizeof(int *)); for(i=0;i<m;i++) { ...

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

Создание динамического массива - C++
Ребята подскажите пожалуйста не давно начал изучать С++ ,решил добавить еще один язык для себя помимо Delphi, и вот вопрос как объявить...

Создание динамического массива - C++
Как создать динамически массив размера n если n вводиться с клавиатуры. А еще и двумерный cin>>n int a=new int; не работает

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
le nom
4 / 4 / 0
Регистрация: 03.01.2009
Сообщений: 50
23.02.2009, 12:18 #2
Не понятно, что значит:
Цитата Сообщение от AleksandraMV Посмотреть сообщение
каждой паре однозначно сопоставляется еще и матрица размерностью 4х4.
0
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,370
23.02.2009, 12:54 #3
Цитата Сообщение от AleksandraMV Посмотреть сообщение
.... где каждый элемент этой матрицы - это список из двух чисел ...... Длина списков в разных ячейках матрицы Q - разная
Вот эти два требования противоречат друг другу. Уточни требования.
0
AleksandraMV
0 / 0 / 0
Регистрация: 20.02.2009
Сообщений: 12
24.02.2009, 16:08  [ТС] #4
CheshireCat, наверное маленько неточно выразилась...ну то есть, например в ячейке Q[i][j] есть список из парных чисел в количестве X штук (то есть: а1,в1 а2,в2 а3,в3...аХ,вХ) и каждой паре сопоставлется матрица 4х4.
А например в другой ячейке Q[k][m] формируется список из попарных чисел уже не Х,а Y (то есть и1,т1 и2,т2 и3,т3...иY,тY)
то есть пары чисел это например а1,в1 а количество этих парных чисел разная


Заранее сенкс

Добавлено через 2 минуты 58 секунд
le nom, ну то есть специальным образом считаются пары элементов и параллельно с ними и вот эта матрица 4х4 (вот и она однозначно сопоставляется)
0
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,370
24.02.2009, 16:37 #5
пара чисел - это stdair
однозначное сопоставление - это std::map
получается вот что (и это компилируется!):
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
template <class T>
class Matrix
{
    T*  _data;
 
public:
    Matrix(int x, int y);  // размерность
    ~Matrix();
    Matrix(const Matrix& m);
    Matrix& operator=(const Matrix& m);
 
    // это позволит обращаться к матрице: m[i][k] = ...;
    template<class U>
    class Helper
    {
        //... закрытые члены....
        friend class Matrix<U>;
    public:
        U& operator[](int i);
    };
    Helper<T> operator[](int i);
 
    // ... прочие детали интерфейса и реализации....
};
 
typedef std:pair<int, int>                 MyCoolPair;
typedef std::map<MyCoolPair, Matrix<int> >  InnerMatrix;
typedef Matrix<InnerMatrix>                 MyCoolQMatrix;  // вот твоя матрица Q!
1
AleksandraMV
0 / 0 / 0
Регистрация: 20.02.2009
Сообщений: 12
24.02.2009, 16:37  [ТС] #6
Цитата Сообщение от CheshireCat Посмотреть сообщение
Вот эти два требования противоречат друг другу. Уточни требования.

наверное маленько неточно выразилась...ну то есть, например в ячейке Q[i][j] есть список из парных чисел в количестве X штук (то есть: а1,в1 а2,в2 а3,в3...аХ,вХ) и каждой паре сопоставлется матрица 4х4.
А например в другой ячейке Q[k][m] формируется список из попарных чисел уже не Х,а Y (то есть и1,т1 и2,т2 и3,т3...иY,тY)
то есть пары чисел это например а1,в1 а количество этих парных чисел разная


Заранее сенкс
0
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,370
24.02.2009, 23:29 #7
Черт, в сообщении искажения (дурацкие смайлики!)... а отредактировать уже никак
В рбщем, самую первую строку и строку 26 кода читать так: std :: pair
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.02.2009, 23:29
Привет! Вот еще темы с ответами:

Создание динамического массива - C++
Как объявить вот так вот : int blocks = { {0,0,0,0,0,0}, {0,0,0,0,0,0}, {0,0,0,0,0,0}}; Мне пишет ошибку : массив не может...

Создание динамического массива - C++
Добрый вечер! Подскажите пожалуйста, что необходимо сделать, чтобы заменить статический массив float array; на динамический, длинна...

Создание динамического массива - C++
Здравствуйте,ребят кто может подсказать как пределать код? что б массивы создавались динамически, ну там писалось введите кол элемнтов...

Создание динамического массива - C++
Хотел написать программу, чтобы пользователь мог задать количество элементов в одномерном массиве, но компилятор пишет что количество...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
24.02.2009, 23:29
Ответ Создать тему
Опции темы

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