Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
5 / 5 / 0
Регистрация: 16.07.2009
Сообщений: 87

Как записать Z в трёхмерном массиве

10.08.2009, 21:11. Показов 934. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
ребята, простите за дурной вопрос, но не могу разобраться.

есть массив
C++
1
2
3
4
const int Y = 2, X = 2, Z = 2;
int a[Z][Y][X] =   {1,1,1,
              2,2,2,
};
куда записывать Z?
судя из C++. Бархатный путь. Часть 1
Первыми инициализируются элементы с самыми маленькими индексами, т.е. я так понимаю должно быть так:
MyArray[0][0][0] == 1
MyArray[0][0][1] == 1
MyArray[0][0][2] == 1
MyArray[0][1][0] == 2
MyArray[0][1][1] == 2
MyArray[0][1][2] == 2
и далее нули т.к. ничего не задано..

по этой логике после двоек я могу записывать координаты Z, но компилятор выдаёт ошибку. по идее Y не все даже ввёл. наставьте на путь истинный...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.08.2009, 21:11
Ответы с готовыми решениями:

Как заменить 0 в трехмерном массиве, которые находятся между определенными числами, на -1?
На вход программе дается размер матрицы (n), далее мы увеличиваем ее, но нумеруем только изначальный массив, то есть только нечетные строки...

Как получить ключи в трёхмерном массиве?
Как получить ключи в трёхмерном массиве? Дано: $nazstr=44; $nazstr=88; ---- Нужно получить:

Как удалить элемент в трехмерном массиве
День добрый, Есть 3х мерный массив, который представляет собой набор дву-мерных матриц. Каждой странице - соответствует своя матрица....

6
инженер-системотехник
 Аватар для Haster
111 / 111 / 5
Регистрация: 10.03.2009
Сообщений: 533
10.08.2009, 21:20
Z у тебя уже записано: для первой точки это 1, для второй - 2.
0
Человек
 Аватар для mustardandrew
97 / 82 / 7
Регистрация: 16.06.2009
Сообщений: 229
10.08.2009, 21:27
Запиши лучше
C++
1
2
3
4
5
const int Y = 2, X = 2, Z = 2;
int a[Z][Y][X] =   {
    {{1, 2},{3, 4}},
    {{5, 6},{7, 8}}
    };
где

a[0][0][0] = 1;
a[0][0][1] = 2;
a[0][1][0] = 3;
a[0][1][1] = 4;
a[1][0][0] = 5;
a[1][0][1] = 6;
a[1][1][0] = 7;
a[1][1][1] = 8;
1
5 / 5 / 0
Регистрация: 16.07.2009
Сообщений: 87
10.08.2009, 21:40  [ТС]
а если у меня есть изображение в массиве, и его я вывожу на экран после. своего рода матрица
ну например
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int a[Y][X] = {
                    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
                    1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
};
как можно сделать несколько таких слоёв в одном массиве но при помощи координаты Z? тобишь если Z=0 одно изображение, если =1 - другое, и т.д

Добавлено через 2 минуты 12 секунд
а всё кажется начинаю понимать, попробую как предложил DreamWolf

Добавлено через 6 минут 28 секунд
т.е. если Z=1 то делаем так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
                              {{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
                    1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,
                    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
а Z=2 уже пишем в следующих скобках
по идее так
0
Человек
 Аватар для mustardandrew
97 / 82 / 7
Регистрация: 16.06.2009
Сообщений: 229
10.08.2009, 21:45
В посте №3 всьо написано понятно.
Если не понял то напишу проще
C++
1
2
3
4
5
6
7
8
9
10
11
const int Y = 2, X = 2, Z = 2;
int a[Z][Y][X] =   {
    {
      {1, 2},  // Ето Z = 0
      {3, 4}   //
    },           
    {
      {5, 6},  // Ето Z = 1           
      {7, 8}   //
     }
    };
0
5 / 5 / 0
Регистрация: 16.07.2009
Сообщений: 87
10.08.2009, 21:54  [ТС]
да понял я, спасибо за помощь.
сделал так:

C++
1
2
3
4
5
6
7
8
9
10
const int Y = 2, X = 3, Z = 3;
void main()
{
 
    int a[Z][Y][X] =   {{ 1,2,3,
                          4,5,6},
                        { 7,8,9,
                          10,11,12}, 
                        { 13,14,15,
                          16,17,18}};
+1 вам за помощь
0
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
11.08.2009, 15:52
сделал так
Ну и неправильно сделал, должно быть так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
const int Y = 2, X = 3, Z = 3;
 
int main() {
 
int a[Z][Y][X]= {
    { { 1,2,3 }, { 4,5,6 } },
    { { 7,8,9 }, { 10,11,12 } },
    { { 13,14,15 }, { 16,17,18 } }
};
 
return 0;
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.08.2009, 15:52
Помогаю со студенческими работами здесь

Тени в трехмерном массиве.
Тени. В трехмерном массиве k(l, m, n), состоящем из нулей и единиц, хранится сеточное изображение некоторого трехмерного тела. Получить...

Найти min в трехмерном массиве
Помогите доработать программу чтобы выводился min в трёхмерном массиве(сейчас ищет максимальное) #include <iostream> #include...

Динамическое программирование в трёхмерном массиве
Здравствуйте Имеется классическая задача дп, только в трёхмерном массиве. В нём нужно найти наименьший путь из левого верхнего угла в...

Работа с индексами в Трёхмерном массиве
Доброго времени суток, на курсах задали такое задание: "Создайте программу, которая содержит в себе трехмерный массив. Программа ...

Наименьшее значение в трехмерном массиве
Подскажите,пожалуйста, как написать код к заданию:написать программу поиска минимального элемента в трёхмерном массиве используя адресную...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru