forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=13)
-   -   Как явно задать масив? (http://forum.boolean.name/showthread.php?t=7499)

FLashMP 24.12.2008 23:58

Как явно задать масив?
 
Всем привет!
Столкнулся я с проблемой: есть масив 9*9 элементов. Можно ли в Блице задать его сразу (а лучше в отдельной функции) ? :SOS:
На С++ это вроде делается так:
int mas[5]={1,2,3,4,5}
Цикл не подходит, так как элементы могут быть разными, т.е {1,8,3,9,5}

Буду очень благодарен за помощь:)

impersonalis 25.12.2008 02:51

Ответ: Как явно задать масив?
 
нет - только прямое присвоение.
В принципе - можно использовать опреаторы Data\Read, но это не лучший вариант, ибо:
1)если данные не постоянны - то их надо грузить из файла или шифрованного ресурса
2)если данные стабильны - то напиши простенький код, который сверстает тебе код с присовениями на блитц (иные реализации этого метода - альтернативные функции загрузки значений в массив, например: парсер строки)
3)варинат третий (психоделчиеский). Базируется на 2ом. Описать твои числовые данные при помощи формулы, зависящей от индекса элемента. Плох трудоёмкостью составления формулы (в худшем случае - это тупо полином вида (1-abs(sgn(I-I1)))*A1+.. ), нечитабельностью и слабой вариатвностью кода.

FLashMP 25.12.2008 12:39

Ответ: Как явно задать масив?
 
Я нашел еще один выход из данной ситуации:

Local tmp_i,tmp_j

Dim nums(9,9)
Dim tmp_str$(9)

tmp_str$(1)="123456789"
tmp_str$(2)="434772267"
tmp_str$(3)="125624522"
tmp_str$(4)="123456789"
tmp_str$(5)="123344789"
tmp_str$(6)="111342789"
tmp_str$(7)="122355555"
tmp_str$(8)="122222222"
tmp_str$(9)="123456780"

For tmp_i=1 To 9
For tmp_j=1 To 9
nums(tmp_j,tmp_i)=Int(Mid$(tmp_str$(tmp_i),tmp_j,1 ))
Next
Next

Теперь оно красиво заполняет масив nums как я и хотел :)

jimon 25.12.2008 12:47

Ответ: Как явно задать масив?
 
решение через задний проход имхо

FLashMP 25.12.2008 13:44

Ответ: Как явно задать масив?
 
Цитата:

Сообщение от jimon (Сообщение 92755)
решение через задний проход имхо

Та я знаю;) Но зато данные можно грузить из файла в виде таблицы а не столбцом по одному числу :)

Если у кого-то есть предложение по-лучше, охотно выслушаю :)))

Tadeus 25.12.2008 21:23

Ответ: Как явно задать масив?
 
Data/Read?

FLashMP 25.12.2008 23:20

Ответ: Как явно задать масив?
 
Цитата:

Сообщение от Tadeus (Сообщение 92805)
Data/Read?

Согласен, данный способ на много лучше :super:


Часовой пояс GMT +4, время: 08:21.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot