Форум
Написать нам
  • Страница 1 из 1
  • 1
Модератор форума: as-master  
Многомерные массивы
toizyДата: Пятница, 28 Ноября 2008, 18:46 | Сообщение # 1
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
ММВ не поддерживает многомерные массивы. Но aSanN предложил выход, пусть не идеальный, но позволяющий создать подобие многомерного массива. Единственное условие - вы должны знать заранее диапазон одного из измерений массива.

Code
X=5  
Y=70  
XY=X*100+Y  
M[XY]=1

100 в данном случае - максимальная длина данного измерения. Т.е. фактически, X-элементы массива идут с шагом в сотню, что позволяет разместить между ними соответственно до ста Y-элементов. В результате получаем многомерный массив в линейном представлении smile

Вот, объяснил, как смог.

Не забывайте говорить спасибо aSanN


Жизнь оказалась не такой уж и забавной, как поначалу...
 
DEMBELДата: Понедельник, 01 Декабря 2008, 07:46 | Сообщение # 2
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
Quote (toizy)
до ста Y-элементов

хе, это означает что теперь одна и та же переменная Х в массиве может иметь несколько состояний? Уже если два, то уже круто - можно к примеру устанавливать значения true/false для Х и оперировать ими как переменной в пределах одного массива, и при обработке в одном и том же цикле, что приведет к существенной оптимизации кода и избавлению от второстепенных массивов... хм, интересно...




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
toizyДата: Понедельник, 01 Декабря 2008, 11:09 | Сообщение # 3
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
Quote (DEMBEL)
может иметь несколько состояний

неа... вникни в принцип smile


Жизнь оказалась не такой уж и забавной, как поначалу...
 
DEMBELДата: Понедельник, 01 Декабря 2008, 11:41 | Сообщение # 4
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
это из высшей математики массив чтоли? у меня была другая идея...



Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
toizyДата: Понедельник, 01 Декабря 2008, 12:17 | Сообщение # 5
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
Выкладывай идеи smile

Жизнь оказалась не такой уж и забавной, как поначалу...
 
Alex3AДата: Понедельник, 01 Декабря 2008, 13:09 | Сообщение # 6
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Таблицу видел? Это и есть многомерный массив - 2 мерный.

Добавлено (01 Декабрь 2008, 13:09)
---------------------------------------------
Многомерные массивы уже давно и с успехом используються в ммв, просто вы этого не поняли,
всем знакомы записи вида
чтототам#ffffff#sssss##
чеще чототам#ffffff#sssss##
это и есть пример многомерного массива, только он не имеет синтаксиса
прямого доступа типа масив[1,1], а требует нескольких строк кода,
для доступа к переменной, мы вынуждены многомерный массив разворачивать
в несколько одномерных.
С логической точки зрения-
Группа массивов, логически связанная между собой, может называться многомерным массивом.
Если каждый индекс описывает характеристики одного и того же объекта.
С синтаксической точки зрения, такая группа не являеться многомерным массивом.
Потому что нет формы однострочного доступа к его элементам.
Но логику работы алгоритма это не нарушает!

 
  • Страница 1 из 1
  • 1
Поиск: