|
2D-программирование Вопросы, касающиеся двумерного программирования |
19.02.2009, 19:22
|
#16
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы
Я уже такого налепил. Со всех примеров натыкал. Кто хочет может посмотреть сбрасываю архив. Может поможет разобраться с этой задачей, а то я сам ну никак не могу.
|
(Offline)
|
|
20.02.2009, 01:18
|
#17
|
злобный флудер
Регистрация: 10.07.2007
Сообщений: 2,585
Написано 789 полезных сообщений (для 1,476 пользователей)
|
Ответ: Массивы
если неможешь массивами - делай типами
|
(Offline)
|
|
20.02.2009, 03:33
|
#18
|
Бывалый
Регистрация: 12.10.2006
Сообщений: 737
Написано 131 полезных сообщений (для 452 пользователей)
|
Ответ: Массивы
да нафиг тут типы? тут же все элементарно... к тому же с типами ИМХО разобраться тем более сложнее...
|
(Offline)
|
|
20.02.2009, 11:55
|
#19
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы :SOS:
Дайте кто нибудь справочник по массивам я уже всю голову сломал, методом научного тыка делаю!
|
(Offline)
|
|
20.02.2009, 15:41
|
#20
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: Массивы
http://www.gaps.tstu.ru/win-1251/lab...1251/gl47.html
Отсюда и по порядку.
Всё что там - подходит и для Блица
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
20.02.2009, 20:56
|
#21
|
Бывалый
Регистрация: 12.10.2006
Сообщений: 737
Написано 131 полезных сообщений (для 452 пользователей)
|
Ответ: Массивы
Petrofan почитай ту ссыль, что я тебе дал. ам как раз именно то, что ты делаешь. там и вывод и обработка мыши и прочее...
|
(Offline)
|
|
23.02.2009, 12:35
|
#22
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы
|
(Offline)
|
|
23.02.2009, 12:46
|
#23
|
scientist.alien
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений (для 2,593 пользователей)
|
Ответ: Массивы
Держи, просвящайся:
//я б посоветова осилить работу с массивами в "инкубаторе" (простые строки кода с минимальными выводами результатов и возможностью в рантайме менять параметры чтоб въехать чего и как), а не на каком-то проекте
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab. We LOVE you. We MADE you.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
23.02.2009, 13:18
|
#24
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы
Спасибо за документ!
У меня постепенно все получаться но вот и появилась проблема все выходные за компом сидел и так и не понял как решить задачу:
Каким образом в поле 8х8 вычислять есть ли одинаковые 3 или больше картинки (по вертикали и горизонтали) и если есть уничтожать а с верху добавить новые сдвигая все вниз массива?
|
(Offline)
|
|
24.02.2009, 11:33
|
#25
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы
Кто то может помочь мне в решении задачи которая описана выше или нет?
Прошу отписаться?
|
(Offline)
|
|
24.02.2009, 11:46
|
#26
|
|
Ответ: Массивы
Petrofan
для каждого столбца или строки выполняем проход по всем его елементам и делаем что-то типа
if type = lasttype then
count = count + 1
else
count = 1
endif
if count = 3 then do_something()
(не забываем про первоначальные установки переменных, думаю lasttype сначала надо сделать отличное от всех типов)
смещать елементы можно так, к примеру ищез елементы k (количество) на позиции i в столбце j, считаем что верх столбика это i = 0
тогда прокручиваем цикл
for z:=0 to i-k
a[z+k] = a[z]
next
for z:= 0 to k
a[z] = newelement()
next
(вроде не ошибся с крайними индексами, пишу утром код в браузере)
идея в том что елементы падают только сверху, потому даже удалая 3 елемента в строке мы должны пройтись по трём столбцам где были эти елементы и сместить там елементы
ps. меня радует что у тебя появляются конкретные проблемы которые тебе не понятны
хотя стоит всё же потренироватся на таких чисто логических задачах по работе с матрицами
|
|
|
24.02.2009, 13:36
|
#27
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы
Ты имеешь в виду типы или массивы?
Вот что я сделал (не нуждается в ресурсах)
Graphics 800,600,32,0
SetBuffer BackBuffer()
SeedRnd MilliSecs()
Font=LoadFont("",32,0,0,0)
SetFont Font
;===========================
Dim Map_Grid(8,8)
Dim Map(8,8)
For I=1 To 8
For J=1 To 8
Map_Grid(I,J)=Rnd(1,4)
Next
Next
;===========================
;===========================
Dim img(5)
For im = 1 To 4
Next
;===========================
While KeyDown(1)=0
Cls
For I=1 To 8
For J=1 To 8
Color 200,0,0
If Map_Grid(i,j)=1 Then Color 0,200,200
If Map_Grid(i,j)=2 Then Color 200,200,0
If Map_Grid(i,j)=3 Then Color 200,0,200
If Map_Grid(i,j)=3 Then Color 0,200,0
Rect 50+I*51,50+J*51,50,50
Next
Next
i = (MouseX())/52-1
j = (MouseY())/52-1
If (i > 0) And (i<9) And (j > 0) And (j < 9) Then
Color 100,100,100
Rect 50+I*51,50+J*51,50,50
Color 200,200,200
Text 0,0,"Image - "+Map_Grid(I,J)
If MouseHit(1) Then
EndIf
EndIf
Text 110,55,i
Text 75,110,j
Flip 1
Wend
End
Может попробуешь добавить сюда то что ты написал.
|
(Offline)
|
|
24.02.2009, 18:30
|
#28
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы
Ну подскажите хотя бы суть как сделать перебор массива языком Blitz3d чтоб находились 3 или больше ячейки и удалялись с массива и записывались другие ячейки. Как это реализовать???
Помогите чтоб я от вас отстал.
|
(Offline)
|
|
25.02.2009, 01:50
|
#29
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: Массивы
Перебираешь КАЖДУЮ ячейку двумерного массива.
Проверяешь соседние с ней ячейки (т.е. с индексами -1,0;1,0 и 0,-1;0,1) на совпадение с тем же значением ячейки. Если они все равны - то да, все три одинаковые.
Как спустить всё вниз чтобы заполнить образовавшийся промежуток?
В ту ячейку, в которой образовались одинаковые предметы (т.е. её нада удалить), кладёшь значение вышестоящей ячейки. В вышестоящую - значение ещё вышестоящей. Пока не доберёшься до самого верха.
И так все три ячейки, которые ты хочешь удалить.
Вопросы по каждому конкретному пункту пжлст, а не "как сделать всё сразу?"
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
26.02.2009, 17:26
|
#30
|
ПроЭктировщик
Регистрация: 26.08.2008
Сообщений: 149
Написано 10 полезных сообщений (для 18 пользователей)
|
Ответ: Массивы
Как этой формулой обменять местами ячейки?
c=a
a=b
b=c
if mousehit(1) then
...
...
endif
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 21:54.
|