Here's a version that supports decimal points and gives a fixed-length output:
Code:
Code:
:Ans→A
:abs(Ans→B
:int(log(Ans+not(Ans→C
:"+
:If A<0
:"-
:For(D,-1,12
:If C=D
:Ans+".
:Ans+sub("0123456789",1+int(10fPart(B10^(D-C))),1
:End