Exemple #1
0
        public static BigFloat Add(BigFloat left, BigFloat right)
        {
            int sub = left.m_order - right.m_order;
            if (sub < 0)
            {
                right.m_order = left.m_order;
                right.m_M *= BigInteger.Pow(10, -sub);
            }
            else if (sub > 0)
            {
                left.m_order = right.m_order;
                left.m_M *= BigInteger.Pow(10, sub);
            }

            left.m_M += right.m_M;
            return left;
        }
Exemple #2
0
        public static BigFloat MultiPly(BigFloat left, BigFloat right)
        {
            left.m_M *= right.m_M;
            left.m_order += right.m_order;

            return left;
        }
Exemple #3
0
 public static BigFloat Abs(BigFloat value)
 {
     if (value.m_M < 0)
         value.m_M = -value.m_M;
     return value;
 }