示例#1
0
        /// <summary>
        /// Сложение с учетом знака
        /// </summary>
        /// <param name="value">С чем складываем</param>
        /// <returns>Результат</returns>
        public BigInteger Add(BigInteger value)
        {
            if (this.sign && value.sign)
            {
                return(this.AbsAdd(value));
            }
            if (!this.sign && value.sign)
            {
                return(value.AbsSubstract(this));
            }
            if (this.sign && !value.sign)
            {
                return(this.AbsSubstract(value));
            }
            BigInteger ans = this.AbsAdd(value);

            ans.ChangeSign(false);
            return(ans);
        }