static Object numberToString(Object x, Object y)
{
int numberBase = (y is Double) ? (int)num(y) : 10;
if (numberBase != 10 || num(x) == Math.Round(num(x)))
{
// An integer
return Convert.ToString((long)num(x), numberBase).ToCharArray();
}
else
{
// A floating point number
return x.ToString().ToCharArray();
}
}