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

Заполнение пятимерного массива - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Даны 2 строки. Определить, состоят ли они из одних и тех же символов. http://www.cyberforum.ru/cpp-beginners/thread798044.html
Даны 2 строки. Определить, состоят ли они из одних и тех же символов.
C++ аналог realloc() в С++ Здравствуйте. собственно вопрос:-существует ли таковой? http://www.cyberforum.ru/cpp-beginners/thread798023.html
C++ Найти сумму цифр в строке
Дан текст, в котором имеются цифры. Найти их сумму
C++ вывод данных стека в Forme
Суть такова: Имеется стек с данными типа stackdata(переименованный тип int), нужно вывести эти данные в форму(можно в текстбок, листбокс etc). Вроде число выводит, а вылетает ошибка. Не пойму как из возвращенных данных стеком сделать int или double. А если стек будет хранить несколько типов сразу, то как быть?
C++ STL vector iterator http://www.cyberforum.ru/cpp-beginners/thread797998.html
есть список в списке... ..точнее: vector <Class1*> mapClass1; а уже в Class1 определён вектор vector <Class2*> mapClass2; при переборе вылетает ошибка: for(vector <Class1*>::iterator it_pass = mapClass1.begin(); it_pass != mapClass1.end(); it_pass++ )
C++ Игра "Домино" есть ли уже готовая программа на с++? подробнее

Показать сообщение отдельно
zverek
2 / 1 / 0
Регистрация: 18.04.2012
Сообщений: 22
01.03.2013, 16:14     Заполнение пятимерного массива
Здравствуйте!

В книге Бондарева В.М. "Программирование на С++" приведена следующая задачка:
Разместите в свободной памяти 5-мерный массив размером 2*2*2*2*2. Заполните его числами от 0 до 31.
Массив разместил и заполнил.
C++
1
2
3
4
5
6
7
8
9
10
11
//размещаю
int ((((*M)[2])[2])[2])[2] = new int[2][2][2][2][2];  
 
//заполняю  
int i=0;   
for (int a=0; a<2;a++)
    for (int b=0; b<2;b++)
        for (int c=0; c<2;c++) 
            for (int d=0; d<2;d++) 
                for (int e=0; e<2;e++)
                    M[a][b][c][d][e]=i++;
Но мне всегда не нравились многоуровневые for'ы. Как заполнить этот массив иным способом?
Например, оперируя адресом каждой ячейки массива и пройдя его весь за один for(i=0;i<32;i++) {...}.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 19:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru