|
dfgpdofijg
|
|
Сортировка трехмерного массива09.07.2014, 11:34. Показов 5069. Ответов 49
Метки нет (Все метки)
|
|
| 09.07.2014, 11:34 | |
|
Ответы с готовыми решениями:
49
Сортировка трехмерного массива Сортировка трехмерного массива (куба) |
|
884 / 537 / 228
Регистрация: 21.02.2011
Сообщений: 5,705
|
||||||
| 29.01.2025, 12:45 | ||||||
|
то есть такой код полная х*е*а? или все же, так можно сделать для решения задачи ТС??
0
|
||||||
|
1673 / 501 / 107
Регистрация: 17.05.2015
Сообщений: 1,519
|
|
| 29.01.2025, 13:03 | |
|
0
|
|
|
Неэпический
|
|
| 29.01.2025, 13:39 | |
|
0
|
|
|
|
||||||||
| 29.01.2025, 13:42 | ||||||||
0
|
||||||||
|
6260 / 2980 / 1050
Регистрация: 01.06.2021
Сообщений: 11,046
|
||
| 29.01.2025, 13:43 | ||
|
я же просил доказать, что в С++ есть трехмерные массивы по внутренней реализации. И вся эта тема со многомерными массивами давно разжевана. Тут на форуме помню, что один эксперт даже говорил, что в самом стандарте многомерные массивы даже не упоминаются, только в каких-то сносках и примечаниях. Я в стандарт не смотрел, но поверю ему на слово.
0
|
||
|
Неэпический
|
||||
| 29.01.2025, 13:49 | ||||
p - это указатель на двумерный массив ![]() Опять же, не нужно путать указатель с массивом. int* p - это указатель на один int, а не на массив.Добавлено через 1 минуту Добавлено через 2 минуты К слову, теме больше 10-ти лет.
0
|
||||
|
6260 / 2980 / 1050
Регистрация: 01.06.2021
Сообщений: 11,046
|
||
| 29.01.2025, 13:57 | ||
|
Нельзя вырывать слово из контекста и вводить всех и вся в заблуждении. В контексте этой темы ТС просит сортировку трехмерного массива. И ничего не случится, если мы будем использовать int[1000] который can be viewed as трехмерный массив по семантике. Конечно, семантика вещь субъективная. Но в контексте данной конкретной задачи int[1000] полностью удовлетворяет критерии для трехмерного массива. А тут уже началась ахинея, а ведь он может быть и двумерным... Речь не в том, чем он может быть вообще. А в том, чем он может быть в конкретной задаче.
0
|
||
|
6260 / 2980 / 1050
Регистрация: 01.06.2021
Сообщений: 11,046
|
|||
| 29.01.2025, 14:02 | |||
|
0
|
|||
|
1673 / 501 / 107
Регистрация: 17.05.2015
Сообщений: 1,519
|
||||||||||||||||||
| 29.01.2025, 14:02 | ||||||||||||||||||
|
Рассмотрим ещё раз исходное заявление: И вот тут возникают сразу две проблемы. Первая проблема:
Некорректно разыменовывать end-итератор: Вторая проблема связанна с ограничением арифметических операций по отношению к указателям. Даже если мы не будем разыменовывать указатель, а просто захотим итерировать его значение от начала до конца многомерного массива, то мы уже налетим на UB. Следующий пример иллюстрирует эту проблему:
Максимальное значение указателя, который мы проинициализировали адресом элемента массива, может быть равно std::end(arr)Но если попытаться увеличить это предельное значение ещё хотя бы на единицу, тогда поведение станет неопределенным:
1
|
||||||||||||||||||
|
|
|||
| 29.01.2025, 14:09 | |||
|
0
|
|||
|
Неэпический
|
||||
| 29.01.2025, 14:14 | ||||
![]() Вот как раз с точки зрения C++ - объявление задает семантические свойства. ![]() Добавлено через 1 минуту
0
|
||||
|
|
||
| 29.01.2025, 14:20 | ||
|
По моему, тут опасность есть если только массив состоит из структур, когда компилятор выравнивает каждый [] на определенное значение. А если просто выродить многомерный массив в простой, то тут может действительно произойти UB..
0
|
||
|
|
|
| 29.01.2025, 14:26 | |
|
0
|
|
|
Неэпический
|
|
| 29.01.2025, 14:29 | |
|
0
|
|
|
6260 / 2980 / 1050
Регистрация: 01.06.2021
Сообщений: 11,046
|
||||||||||||||||||
| 29.01.2025, 14:31 | ||||||||||||||||||
|
Вот когда дают задачу создать одномерный массив целых чисел. Я же без проблем могу создать double arr[] и заполнить его целыми числами. Или вы мне скажете, что нужно было взять int или long, или long long... А я вам отвечу, что числа, имеющие тип int или long, или long long, не равносильны математическому определению множества целых чисел. Соответственно, никто не мешает использовать double массив для представления целых чисел. Конечно, язык С++ обделил так называемые integer types и integral types семантически ближе к целым числам (в значении математики) свойствами, и именно по этой причине дефолтно или в большинстве случаев программисты будут использовать именно их для преставления целых чисел (в значении математики). Но это никак не запрещает использовать другие типы или даже кастомные классы и структуры и называть их по семантике целыми числами или массивами целых чисел. Так что, К тому же, Алексей не говорил, что он собирается сделать
Возможно, он вообще имел в виду принять как int A[10][10][10]; потом превратить в одномерный размером 1000 путем цикла, создав другую переменную.
1
|
||||||||||||||||||
|
Неэпический
|
|||
| 29.01.2025, 14:37 | |||
|
Ну ладно, вспомним былое:
Как видим из цитат далее - многомерные массивы есть. Что такое "по реализации" вы так и не ответили. В C++ массив:
Придуманная Вами семантика чего-либо и реализация - это ваши выдумки. В C++ с этим всё ясно. В контексте задачи Вы можете, на мой взгляд, использовать что угодно в рамках разумного, но это не говорит о том, что в C++ нет многомерных массивов.
0
|
|||
|
6260 / 2980 / 1050
Регистрация: 01.06.2021
Сообщений: 11,046
|
|||
| 29.01.2025, 14:44 | |||
|
0
|
|||
|
Неэпический
|
|
| 29.01.2025, 14:45 | |
|
0
|
|
| 29.01.2025, 14:45 | |
|
Помогаю со студенческими работами здесь
40
Выделить память для трехмерного массива и изменить индексы начального элемента массива Заполнение трехмерного массива Заполнение трехмерного массива Сумма элементов трехмерного массива Заполнить срез трехмерного массива Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер.
Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
|
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта
Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
|
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром.
возможно получится прикрутить интерпретатор питон для кастомизации игровой логики.
что есть на текущий момент:. . .
|
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2.
Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
|
|
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
|
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2.
Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|