Помогите, мне нужны парочка процедур, использующих стандартные дингамические массивы мне нужен трехмерный массив. и процедуры 1 Очищает весь массив и задает его размеры как кубика: Х:У:Z подается нап вход процедуры и сам массив 2. вывоит элемент из этого массива с координатами XYZ 3. Меня ет значение снизу не получившиеся попытка.
Значит, что бы сделал я: у тебя все равно массив map описан глобально, и он один... Так зачем ты его тягаешь из функции в функцию как параметр? Попробуй описАть вот так:
procedure initmap(x,y,z:integer); var i,j:integer; begin map:=nil; setlength(map, x, y, z); // Работа с глобальным массивом end; procedure Reflesh(activelayer:integer); begin ... end;
procedure TForm1.ButtonRefleshClick(Sender: TObject); begin Reflesh(1); end;
procedure TForm1.FormCreate(Sender: TObject); begin initmap(10,10,3); end;
Но в твоей программе есть еще несколько камней:
procedure Reflesh(activelayer:integer); begin ... // Y + 9 = 10, а индексы могут быть с 0 до 9 Form1.Buttonmap210.caption:= map[x+1,y+9,activelayer]; ... end;