Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.19;
Скачать: CL | DM;

Вниз

один массив побить на десять   Найти похожие ветки 

 
vilfred   (2002-12-09 19:36) [0]

есть массив, размером 100 на 200, его надо побить на массивы 10 на 200. Как это сделать? Я уже одурел...
thanks!


 
Reindeer Moss Eater   (2002-12-09 19:41) [1]

1. Move();
2. For ...


 
LongIsland ©   (2002-12-09 19:43) [2]


> vilfred (09.12.02 19:36)

Уточните, пожалуйста, а КАК Вы пытались и какой массив (статический или динамический)?


 
vilfred   (2002-12-09 19:44) [3]

не понял ничего, там одномерные массивы... :(((
я заполняю массив вот так:

const VidH=255; VidW=377;
...
for n:=11 to VidH-11 do for m:=0 to VidW-1 do
ma[n,m]:=byte(Image2.Canvas.Pixels[n,m] and $ff);

это что трехмерный массив надо делать? Как? НЕ понимаю!!!!!! :(((((


 
Reindeer Moss Eater   (2002-12-09 19:46) [4]

Тогда сначала пойми что тебе надо.


 
vilfred   (2002-12-09 19:47) [5]

мне нужно побить массив по горизонтальным строкам длинной в 377 пикселей... потом дальше обрабатывать как-то.
не понимаю, как это сделать?
если так, то не пашет.

for n:=11 to VidH-11 do for m:=0 to VidW-1 do
if (int(n)/16<>int(n/16)) then
ma[n,m]:=byte(Image2.Canvas.Pixels[n,m] and $ff);

надо побить массив ma[n,m] на мелкие... не бъется, не умею :((((((((((((


 
Reindeer Moss Eater   (2002-12-09 19:49) [6]

Что означает "побить"?


 
LongIsland ©   (2002-12-09 19:51) [7]


> vilfred (09.12.02 19:47)
> мне нужно побить массив по горизонтальным строкам длинной
> в 377 пикселей... потом дальше обрабатывать как-то.
> не понимаю, как это сделать?
> если так, то не пашет.
>
> for n:=11 to VidH-11 do for m:=0 to VidW-1 do
> if (int(n)/16<>int(n/16)) then
> ma[n,m]:=byte(Image2.Canvas.Pixels[n,m] and $ff);
>
> надо побить массив ma[n,m] на мелкие... не бъется, не умею
> :((((((((((((

ДА ЗАЧЕМ???


 
vilfred   (2002-12-09 19:53) [8]

надо :(((

чтобы был массив массивов из 16 строк, далее массив массивов из 16 строк далее массив массивов из 16 строк. И т.д. пока все эти 16 не сложатся в 255.



 
Reindeer Moss Eater   (2002-12-09 19:55) [9]

Ну допустим будет. Что станешь делать?
Почему это невозможно с одним целым массивом?


 
vilfred   (2002-12-09 19:57) [10]

обрабатывать его буду, у меня методы есть для обработки, которые я сам делал, но с трехмерным массивом не ходит ничего :((

Ж(((((((


 
vilfred   (2002-12-09 19:58) [11]

не выходит тоесть!!


 
Reindeer Moss Eater   (2002-12-09 20:00) [12]

Ну раз так, - удачи


 
Sha ©   (2002-12-09 20:30) [13]

Попробуй так

var
a: array[1..100,1..200] of YourType;
b: array[1..10,1..10,1..200] of YourType absolute a;

и где надо используй нужный вариант представления.


 
vilfred   (2002-12-09 20:47) [14]

2Sha, ругается, не хочет, мой код тоже не работает:

for h:=0 to 15 do for n:=11+h to VidH-11 do
for m:=0 to VidW-1 do tt[h,n,m]:=ma[n,m];


 
Sha ©   (2002-12-09 21:00) [15]

Ни один индекс в выражении не должен выходить за границы.
У тебя выходит.


 
Sha ©   (2002-12-09 22:02) [16]

Еще мне показалось, ты пытаешься скопировать массив-A в массив-B.
Не стоит. Они уже "скопированы". Почитай про absolute.


 
vilfred   (2002-12-09 22:15) [17]

вобщем короче я не врубаюсь совершенно конкретно в это все дело!!!!!!!!!


 
Harvard University   (2002-12-09 22:23) [18]

Бывает..


 
Sha ©   (2002-12-09 22:26) [19]

Все просто: массив-A и массив-B - два разных имени для одних и тех же данных.

A - одна большая плитка шоколада размером 100х200.
Б - та же плитка, разрезанная на 10 шоколадок размером 10х200.

К ячейке номер 7 в 15-том ряду можно обратиться как А[15,7] или как Б[2,5,7] (2 - это номер 2-ой шоколадки).

Теперь понятней ? ;)


 
vilfred   (2002-12-09 22:40) [20]

2Sha, заррррррработалааааааааа!!! Спасибо!! :))


 
vilfred   (2002-12-10 12:37) [21]

мне так надо было бить на несколько частей массив потому, что шеф так сказал научный. тут непоспоришь.



Страницы: 1 вся ветка

Текущий архив: 2002.12.19;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.015 c
3-61443
Анатолий
2002-11-29 15:09
2002.12.19
Ограничения полей в IB


1-61511
Mad_Ghost
2002-12-06 14:53
2002.12.19
Скока можно одновременно сетевых подключений и потоков?


4-61882
AquaSun1
2002-11-07 06:00
2002.12.19
Указать из какой DLL ки запустить функцию


14-61796
Th
2002-11-28 18:33
2002.12.19
Наибольший Общий Делитель


1-61562
Виталик
2002-12-09 18:49
2002.12.19
MessageBox по центру моего окна (или в произвольном месте экрана)