<!DOCTYPE stack PUBLIC "-//Apple, Inc.//DTD stack V 2.0//EN" "" >
<stack>
<name>in</name>
<id>-1</id>
<cardCount>1</cardCount>
<cardID>3642</cardID>
<listID>2156</listID>
<cantModify><false /></cantModify>
<cantDelete><false /></cantDelete>
<cantAbort><false /></cantAbort>
<cardSize>
<width>416</width>
<height>240</height>
</cardSize>
<script>function baseConvertReal theNumber,sourceBase,destBaseput realNumberFromAnyBaseToDecimal(sourceBase,theNumber) into tput realNumberFromDecimalToAnyBase(destBase,t) into ureturn uend baseConvertRealfunction realNumberFromAnyBaseToDecimal base,aNumberif base = "Binary" then put 2 into baseif base = "Quinary" then put 5 into baseif base = "Octal" then put 8 into baseif base = "Decimal" then put 10 into baseif base = "Duodecimal" then put 12 into baseif base = "Hexadecimal" then put 16 into baseif base = "Vigesimal" then put 20 into baseif base = "Bin" then put 2 into baseif base = "Oct" then put 8 into baseif base = "Dec" then put 10 into baseif base = "Hex" then put 16 into baseif base = 10 then return aNumberif the first char of aNumber = "-" thenput true into NisNegdelete first char of aNumberelseput false into NisNegend ifput empty into integerPartput empty into realPartput 0 into integeriterationput (the number of chars in aNumber)+1 into realiterationrepeatadd 1 to integeriterationif char integeriteration of aNumber = "." then exit repeatif char integeriteration of aNumber is empty then exit repeatput char integeriteration of aNumber into tif t is not a number then put ((the chartonum of t)-55) into tput "," & t after integerPartend repeatif aNumber contains "." thenrepeatsubtract 1 from realiterationif char realiteration of aNumber = "." then exit repeatif char realiteration of aNumber is empty then exit repeatput char realiteration of aNumber into tif t is not a number then put ((the chartonum of t)-55) into tput "," & t after realPartend repeatend ifdelete first char of realpartdelete first char of integerpartif integerpart is empty then put "0" into integerPartif realpart is empty then put "0" into realPartput 0 into intaccput 0 into realaccrepeat with x = 1 to the number of items in integerPartmultiply intacc by baseadd item x of integerPart to intaccend repeatrepeat with x = 1 to the number of items in realPartadd item x of realPart to realaccdivide realacc by baseend repeatdelete char 1 of realaccput intacc & realacc into newNumberrepeat until the last char of newNumber <> "0"delete last char of newNumberend repeatrepeat until the first char of newNumber <> "0"delete first char of newNumberend repeatif NisNeg then return (newNumber * (-1))return newNumberend realNumberFromAnyBaseToDecimalfunction realNumberFromDecimalToAnyBase base,aNumberif base = "Binary" then put 2 into baseif base = "Quinary" then put 5 into baseif base = "Octal" then put 8 into baseif base = "Decimal" then put 10 into baseif base = "Duodecimal" then put 12 into baseif base = "Hexadecimal" then put 16 into baseif base = "Vigesimal" then put 20 into baseif base = "Bin" then put 2 into baseif base = "Oct" then put 8 into baseif base = "Dec" then put 10 into baseif base = "Hex" then put 16 into baseif base = 10 then return aNumberif aNumber < 0 thenput true into NisNegput abs(aNumber) into aNumberelseput false into NisNegend ifput aNumber DIV 1 into ipartput aNumber MOD 1 into rpartput empty into iaccput empty into raccrepeat until ipart = 0--put ipart MOD base before iaccput ipart MOD base into tif t > 9 then put the numtochar of (t+55) into tput t before iaccput ipart DIV base into ipartend repeatrepeat 15--put (rpart * base) DIV 1 after raccput (rpart * base) DIV 1 into tif t > 9 then put the numtochar of (t+55) into tput t after raccput (rpart * base) MOD 1 into rpartend repeatput iacc & "." & racc into newNumberrepeat until the last char of newNumber <> "0"delete last char of newNumberend repeatrepeat until the first char of newNumber <> "0"delete first char of newNumberend repeatif the last char of newNumber = "." then delete last char of newNumberif NisNeg then put "-" before newNumberreturn newNumberend realNumberFromDecimalToAnyBase</script>