Я бы ответил вам на примере, охватывающем ваш сценарий. Допустим, мы стремимся иметь массив, в котором перечислены элементы двоичных файлов, когда мы строим целое число в base2 (двоичном).
Define LibPub develope(a,b)=
Func
Local mi,m,q
mi:=mod(a,b)
q:=((a-mi)/(b))
Disp mi
While q≥b
a:=q
m:=mod(a,b)
q:=((a-m)/(b))
Disp m
EndWhile
EndFunc
Приведенная выше небольшая программа преобразует целое число в десятичной системе счисления в двоичную; однако каждый двоичный файл отображается в отдельной строке, как вы упомянули: ex:
develope(222,2)
0
1
1
1
1
0
1
введите здесь описание изображения
но это не то, что вы хотите, вы хотите в одной строке. ВАЖНО, ЧТО ВЫ ДОЛЖНЫ ХОТИТЬ, ЧТО КАЖДЫЙ ЭЛЕМЕНТ БЫЛ ДОСТУПЕН КАК ОТДЕЛЬНОЕ ЦЕЛОЕ ЧИСЛО, ПРАВИЛЬНО? КАК ЭЛЕМЕНТ В СПИСКЕ МАССИВА, ЭТО ТО, ЧТО ВЫ ИЩЕТЕ, ПРАВИЛЬНО?
Там мы идем:
Define LibPub develope(n,b)=
Func
Local q,k,seti,set,valid
valid:=b
If valid>1 Then
q:=n
k:=0
set:={}
While q≠0
seti:=mod(q,b)
q:=int(((q)/(b)))
k:=k+1
seti→set[k]
EndWhile
Else
Disp "Erreur, La base doit être plus grand que 1."
EndIf
Return set
EndFunc
По сути, поскольку мы не знаем, сколько элементов будет добавлено в список массивов, set:={}
объявляет массив с неопределенным dim
(обычно длина) для динамического увеличения.
Команда seti→set[k]
добавит значение seti
, каким бы оно ни было, в позицию k
списка массивов.
а return set
просто возвращает массив.
если вам нужно получить доступ к определенному элементу, вы знаете, как это сделать: elementNumber5:=set[5]
Я хочу, чтобы это помогло.
person
Saffa Seraj
schedule
09.03.2017