Beispiel #1
0
        public static string ToString(BigDouble d, int precision = 2)
        {
            if (d == BigDouble.ZERO)
            {
                return("0");
            }
            if (d.exponent < 0L)
            {
                return("0.0");
            }
            int    num    = (int)d.exponent % 3;
            long   num2   = d.exponent - (long)num;
            string format = (d.exponent >= 3L) ? ("F" + (precision - num)) : string.Empty;
            string text   = Math.Round(d.numerator * (double)BigString.multiplier_exponents[num], precision - num).ToString(format);

            if (num2 == 0L)
            {
                return(text);
            }
            string str = (num2 >= (long)BigString.maxExponent) ? BigString.doubleLetterCurrency(num2) : BigString.names[(int)(checked ((IntPtr)(num2 / 3L)))];

            return(text + str);
        }
Beispiel #2
0
        public static string ToString(BigDouble d, int precision = 2)
        {
            if (d == BigDouble.ZERO)
            {
                return("0");
            }
            if (d == BigDouble.PositiveInfinity)
            {
                return("INF");
            }
            if (d == BigDouble.NegativeInfinity)
            {
                return("-INF");
            }
            if (d.exponent < 0)
            {
                return("0.0");
            }
            int    num    = (int)d.exponent % 3;
            long   num2   = d.exponent - num;
            string format = (d.exponent >= 3) ? ("F" + (precision - num)) : string.Empty;
            string text   = Math.Round(d.numerator * (double)multiplier_exponents[num], precision - num).ToString(format);

            if (num2 == 0)
            {
                return(text);
            }
            string str  = (num2 >= maxExponent) ? doubleLetterCurrency(num2) : names[num2 / 3];
            string str2 = string.Empty;

            if (num2 > maxExponent - 1)
            {
                str2 = "+";
            }
            return(text + str + str2);
        }