Found an answer. Not sure if it's the best (probably not) but its better than nothing.
Limitations, doesn't work with decimals (not a big deal for my purposes), doesn't work with imaginary numbers.
135->A //A stores the numbers that you want to convert. 135 is used as an example
0->C //Clears value of C
If A<0 //Checks if A is less than 0
Then
1->C //Flags it as a negative number so that the negative sign can be added after
Abs A->A //Potentially not required but it made sense to me to put it in
EndIf
If A=0 //Checks if A is equal to 0
Then
"0"->Str 2 //Defines the string as 0
Goto 1 //Skips the rest of the program as it is irrelevant
EndIf
""->Str 2 //Clears the string, just in case
Int (log A)->X //Returns the number of digits in the number -1
0->N //Loop variable
While N<=X
A Rmdr 10->B //Dividing by ten gives the right most digit as the remainder so dividing A/10 would give the value 5 for the first iteration given the input shown above
Int (A/10)->A //Shifts the number to the right getting rid of the right most number. With the input above, the first iteration would result in A being redefined as 13
If B=0 //Checks the value of B
Then
"0"+Str 2->Str 2 //Assigns the value of B to the string
EndIf
StrMid("0123456789", B+1, 1)+Str 2->Str 2 //Adds the value of B to the string (Credit to somebody1234)
Isz N //Adds 1 to N
WhileEnd
If C=1 //Checks if A was flagged as a negative number
Then
"-"+Str 2->Str 2 //Adds a negative sign at the front of the string
IfEnd
Lbl 1 //Only used in the case where A=0
Feel free to suggest changes, or suggest a better alternative.
Edited by bennyboy8888, 18 August 2014 - 01:53 AM.