Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Трехмерный массив. Как присвоить константные значения? 
:(
    Опции темы
Atiskara
Дата 8.6.2008, 23:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



В общем, есть массив матриц с заранее известными значениями. Как эти значения присвоить массиву при загрузке программы? Одно из измерений массива переменной размерности, но в принципе можно и постоянной сделать.. Помогите, люди..
PM MAIL   Вверх
Alexeis
Дата 9.6.2008, 09:42 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 34
Всего: 459



Например так
Код

  a[i, j, k] := 5;

Или так
Код

  a[i][j][k] := 5;



--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Atiskara
Дата 9.6.2008, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



Цитата

Например так
Код

  a[i, j, k] := 5;

Или так
Код

  a[i][j][k] := 5;



хех...около 100 матриц с размерностью примерно 10х12... и все это прописать построчно, как я понимаю?
Код

mas[0,0,0]=0
mas[0,0,1]=1
mas[0,0,2]=0
mas[0,0,3]=0
mas[0,0,4]=0
mas[0,0,5]=1
mas[0,0,6]=1
....


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

Это сообщение отредактировал(а) Atiskara - 9.6.2008, 10:27
PM MAIL   Вверх
Alexeis
Дата 9.6.2008, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 34
Всего: 459



Atiskara, потому я и писал i, j, k, что это типичные имена счетчиков циклов. Делать все нужно в цикле smile .


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Atiskara
Дата 9.6.2008, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



Цитата(Alexeis @ 9.6.2008,  10:36)
Atiskara, потому я и писал i, j, k, что это типичные имена счетчиков циклов. Делать все нужно в цикле smile .

так мои массивы не подлежат циклированию... вот например, 

один элемент массива выглядит так:

111111111111
111111111111
110001100011
110001100011
110001100011
110001100011
110001100011
111111100011
011110111110
000000011100

как данные значения присвоить в mas[i,j,k]?
PM MAIL   Вверх
THandle
Дата 9.6.2008, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 50
Всего: 372



Может быть сразу объявить массив со значениями?

Код

var
  Form1: TForm1;
  arr : array [1..10, 1..10, 1..10] of integer =
    (
    //значения
    );



Например:

Код

var
  arr : array [1..4, 1..4] of integer =
    ((1, 1, 2, 4), (1, 5, 1, 6), (3, 5, 6, 9), (3, 6, 8, 7));


???
PM   Вверх
Atiskara
Дата 9.6.2008, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



THandle, 
Благодарю. Вот это мне и нужно было...

Добавлено через 3 минуты и 24 секунды
Цитата(THandle @ 9.6.2008,  11:09)
Может быть сразу объявить массив со значениями?

Код

var
  Form1: TForm1;
  arr : array [1..10, 1..10, 1..10] of integer =
    (
    //значения
    );



Например:

Код

var
  arr : array [1..4, 1..4] of integer =
    ((1, 1, 2, 4), (1, 5, 1, 6), (3, 5, 6, 9), (3, 6, 8, 7));


???

а нельзя ли при этом реализовать возможность задания переменного размера одного измерения массива?
PM MAIL   Вверх
Rennigth
Дата 9.6.2008, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 15
Всего: 76



Цитата(Atiskara @  9.6.2008,  11:16 Найти цитируемый пост)
а нельзя ли при этом реализовать возможность задания переменного размера одного измерения массива? 

нужно использовать для этого динамические массивы.


--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
Atiskara
Дата 9.6.2008, 14:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



Цитата(Rennigth @ 9.6.2008,  14:07)
Цитата(Atiskara @  9.6.2008,  11:16 Найти цитируемый пост)
а нельзя ли при этом реализовать возможность задания переменного размера одного измерения массива? 

нужно использовать для этого динамические массивы.

так как же в процедуре тогда массиву присвоить значения?
PM MAIL   Вверх
Rennigth
Дата 9.6.2008, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 15
Всего: 76



Цитата(Atiskara @  9.6.2008,  14:25 Найти цитируемый пост)
так как же в процедуре тогда массиву присвоить значения? 

уже тогда ручками. а от куда данные берешь?



--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
Atiskara
Дата 9.6.2008, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



Цитата(Rennigth @ 9.6.2008,  15:17)
Цитата(Atiskara @  9.6.2008,  14:25 Найти цитируемый пост)
так как же в процедуре тогда массиву присвоить значения? 

уже тогда ручками. а от куда данные берешь?

шаблоны символов в виде пикселей черного или белого цвета, для сравнения при распознавании изображения...
PM MAIL   Вверх
Atiskara
Дата 10.6.2008, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



По моему вообще нельзя сделать динамический многомерный массив с переменной размерностью одного из измерений... Переубедите меня если можно? 
PM MAIL   Вверх
Alexeis
Дата 10.6.2008, 22:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 34
Всего: 459



  Можно  smile . Delphi всемогуч!


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Atiskara
Дата 10.6.2008, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 18.10.2007

Репутация: нет
Всего: нет



Цитата(Alexeis @ 10.6.2008,  22:41)
Можно  smile . Delphi всемогуч!

Неубедил... smile   smile 
PM MAIL   Вверх
Alexeis
Дата 10.6.2008, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 34
Всего: 459



Код

var
  a : array of array[0..5] of array of array ['a'..'m'] of AnsiString;




--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0612 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.