![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
Нужно динамически создать N-мерный динамический массив (N вводит пользователь). Что-то никак не придумаю как.
-------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
VarArrayCreate ?
разве что вместо дин.массива - вариантный) -------------------- There are always someone smarter than you... |
|||
|
||||
| Voyager |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 532 Регистрация: 8.2.2005 Репутация: 2 Всего: 18 |
|
|||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
Честно говоря не очень понял как им юзать. Voyager, твой пример - это не многомерный массив, а просто динамический. ----------------------- Постараюсь объяснить суть. Есть массив A целых чисел, надо сделать его многомерным. Причем надо динамически изменять количество его измерений. Например: N=2, у массива 2 измерения - обращаться к конкретному элементу надо так A[1,1] N=3, у массива 3 измерения - обращаться к конкретному элементу надо так A[1,1,1] N=4, у массива 4 имзерения - обращаться к конкретному элементу надо так A[1,1,1,1] И т.д. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| ivan219 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1121 Регистрация: 19.11.2005 Где: Планета земля Репутация: 2 Всего: 12 |
Может сразу выделить по болше
А так новерное надо тип какойто хитрый делать если это вобще возможно А може с файлом работать и все данные в фаил скидывать по определённой структуре потом от туда брать. |
|||
|
||||
| Sunvas |
|
||||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
Это мне кажется неправильным подоходом к проблемме. Поскольку иногда может использоваться 1 измерение, а иногда 50. Ну не буду же я 50 писать array of.
Поэтому и создал тему. А в VB такое возможно, кстати.
Если будет 50 измерений и по 3 элемента в каждом, то вряд-ли через файл работать как-то чревато. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
||||
|
|||||
| pushok |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 7.2.2007 Репутация: нет Всего: нет |
может поможет:
http://vingrad.ru/DELPHI-DLP-000250 где-то слышал, что нельзя придумать задачу, для решения которой потребовалось бы больше 8-ми измерений. может приведешь пример? |
|||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
Не помогло.
Интересно услышать доказательство этой теоремы. В моем же случае ситуация проста: препод по программированию. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| ivan219 |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1121 Регистрация: 19.11.2005 Где: Планета земля Репутация: 2 Всего: 12 |
Почему если взять одно измерение это строка а элементы это символы в строке то нетак уж и черевато получится. 50 строк по 3 элемента:
Или на оборот 50 элементов и 3 строки:
Загнать всё это в динамический массив и потом программно раскидывать взависимости от числа N/ Добавлено @ 21:33 Так может в нём Dll написать и потом сней работать |
||||||
|
|||||||
| aktuba |
|
|||
![]() Смышленный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1915 Регистрация: 24.4.2006 Где: Планета Земля Репутация: 16 Всего: 38 |
Первое, что пришло в голову... -------------------- ![]() |
|||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
aktuba, и у тебя получился двумерный массив!
ivan219, неудобно будет тогда работать с таким массивом - ведь все обращения к массиву придется делать функциями/процедурами для записи/чтения данных из файла. Написать ДЛЛ как вариант возможно, но хотелось бы все сделать на Делфи. -------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| pushok |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 92 Регистрация: 7.2.2007 Репутация: нет Всего: нет |
пока только для многомерного массива, кол-во элементов которого в каждом измерении одинаково
( при N=2 массив квадратный N=3 - кубический)
т.е. если у нас есть 4-х мерный массив, то чтобы обратиться к его элементу [1,2,1,2] мы должны заполнить массив vector, например vect[0]:=1; vect[1]:=2; vect[2]:=1; vect[3]:=2; а после вызвать функцию get_value(vector) которая нам вернет значение этого элемента записывать значение аналогично set_value(vector,5). например вот так. а если ты хочешь чтобы измерения имели разную размерность, то наверно будет так:
Это сообщение отредактировал(а) pushok - 8.2.2007, 18:38 |
||||
|
|||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
Sunvas, а что с VarArrayCreate то неясно?
вот примитивный пример:
-------------------- There are always someone smarter than you... |
|||
|
||||
| Sunvas |
|
|||
|
Соль и сахар ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3388 Регистрация: 12.3.2006 Где: Тосно Репутация: 28 Всего: 89 |
MetalFan, уже более, что мне надо.
-------------------- Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их. |
|||
|
||||
| MetalFan |
|
|||
![]() Аццкий Сотона ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3815 Регистрация: 2.10.2006 Где: Moscow Репутация: 62 Всего: 128 |
Sunvas,
только потом про VarClear не забыть... -------------------- There are always someone smarter than you... |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |