Не знаю, что имеется в виду под "произвольного" в данном случае: как, например, разложить
или комплексное число и т.д.
Я написал на Matlab, но, думаю, пойдет и под Octave так:
Код:
function razryad=razryad(n)
n=abs(n);
n=num2str(n);
n=strrep(n, '.', '');
n=str2num(n);
flag=1;
i=0;
while flag
if n==0
flag=0;
else
i=i+1;
razryad(i)=n-10*floor(n/10);
n=floor(n/10);
end
end
razryad=razryad(end:-1:1);
а дальше модифицируйте (упрощайте или наоборот надстраивайте на это) по своему усмотрению в зависимости от "произвольности" "произвольного числа".