Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

хитрый алгоритм [D6]


vilfred ©   (2002-12-23 22:29:00) 

есть такой массив массивов:

1: 000010
2: 000100
3: 001000
4: 010000
5: 100000

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

Соответственно если написать такой код, то оно будет рисовать только три эллипса-точки(а хотелось бы чтобы все пять):

for i:=0 to 10 do begin
for r:=e-1 to e+1 do begin
if (aaa3[i,r]=1) then begin
Ellipse(r,i,r+2,i+2);
end;
end;
end;

на самом деле вся проблема в том, что единичек, расположенных по диагонали вовсе не 5, а 300-350...

thanks!


OlDemon   (2002-12-24 07:10:00) [1]

2 vilfred> что-то я не понял суть того что тебе надо :((
Попробуй еще раз объяснить.


vilfred   (2002-12-24 00:33:00) [2]

да хрен его знает как это задействовать!!!

блин, у меня на самом деле единички то идут не последовательно влево или вправо, а как хотят. набор случайный... как пример привел - простейший случай... не шарю вобщем как такое сделать одним словом.


LORD   (2002-12-23 23:20:00) [3]

задействуй здвиг влево или в право, этоже двоичная система.


Наверх

Титульная страница Поиск, карта сайта Написать письмо