Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
ВнизПолучить эл-т многмоерного массива не зная его размерность Найти похожие ветки
← →
Кевларвестов Семен (2007-02-01 15:04) [0]Добрый день!
Вот такая вот задача есть вариантный массив AResFun: variant;
Есть массив целых чисел AIntArr array of integer в котором указаны индексы нужного элемента.
Есть ли какая нибудь функция чтоб можно было б написать что то типа AResFun[AIntArr] и, собственно, получить нужный элемент? Так как размерность массива AResFun заранее неизвестна.
← →
Elen © (2007-02-01 15:08) [1]
> Так как размерность массива AResFun заранее неизвестна
High(AResFun); даст размерность
← →
Кевларвестов Семен (2007-02-01 15:22) [2]нет, ну дать то она ее даст, но как вытянуть элемент?
Я знаю только один способ: AResFun[AIntArr[0],...AIntArr[n]].
И это бы сработало, но к сожалению кто ее знает - какая n будет.
Вот собственно и вопрос можно ли как-то эти индексы вбивать автоматом?Причем, неизвестно сколько их там штук будет.
← →
Elen © (2007-02-01 15:29) [3]
> кто ее знает - какая n будет.
for i:=low(массив) to high(массив) do Врите(массив[i]); Сколько бы не было элементов она пройдет их всех
← →
Jeer © (2007-02-01 16:06) [4]
> Elen © (01.02.07 15:08) [1]
> High(AResFun); даст размерность
Опять, блин, бабсы со своей "бабской" логикой.
С учетом, что Вы do Врите( - размерность масива дает Length().
← →
Vlad Oshin © (2007-02-01 16:54) [5]function GivEl(AResFun: variant; ar:array of integer):variant;
var
siz1:longint;
i:integer;
t:variant;
begin
siz1:=length(ar);
for i:=0 to siz1-1 do begin
t:=AResFun[ar[i]];
AResFun:=t;
end;
result:=t;
end;
← →
Elen © (2007-02-01 17:05) [6]
> С учетом, что Вы do Врите( - размерность масива дает Length().
C учетом что массив скорее всего начинаться с 0, значит High и Length дадут одинаковые значения
← →
Anatoly Podgoretsky © (2007-02-01 19:45) [7]> Elen (01.02.2007 15:08:01) [1]
High(AResFun); даст не размерность, а верхнею его границу. Length даст размерность, от которой правда толку мало.
← →
Anatoly Podgoretsky © (2007-02-01 19:47) [8]> Elen (01.02.2007 17:05:06) [6]
Это предположение, вероятно далекое от истины, кроме того в вопросе речь о многомерных массивах, к тому же неисветного типа и даже неизвестно динамических или статических.
Но мне не нравится постановка задачи у автора, оторваные от массива индексы, верный путь в могилу и очень мучительный.
← →
Кевларвестов Семен (2007-02-01 20:02) [9]не надо меня в могилу. Там сыро и червяки.
А на самом деле, как обычно, нужно справку читать - ибо есть функция VarArrayGet от которой становится легко и хорошо.
← →
Zeqfreed © (2007-02-01 21:17) [10]> Jeer © (01.02.07 16:06) [4]
> Опять, блин, бабсы со своей "бабской" логикой.
Настоящие мужчины не ошибаются, ага?
← →
Anatoly Podgoretsky © (2007-02-01 22:02) [11]Его надо в "бабский" коллектив, как меня, тогда поймет логику.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.046 c