System.Numerics.BigIntegerBuilder.Mod C# (CSharp) Method

Mod() public static method

public static Mod ( BigIntegerBuilder &regNum, uint uDen ) : uint
regNum BigIntegerBuilder
uDen uint
return uint
        public static uint Mod(ref BigIntegerBuilder regNum, uint uDen) {
            if (uDen == 1) {
                return 0;
            }
            if (regNum._iuLast == 0) {
                return (regNum._uSmall % uDen);
            }
            ulong num = 0L;
            for (int i = regNum._iuLast; i >= 0; i--) {
                num = NumericsHelpers.MakeUlong((uint)num, regNum._rgu[i]) % ((ulong)uDen);
            }
            return (uint)num;
        }

Same methods

BigIntegerBuilder::Mod ( BigIntegerBuilder &regDen ) : void

Usage Example

        /// <summary>
        ///     Returns the remainder that results from division with two specified
        ///     <see cref="BigInteger" /> values.
        /// </summary>
        /// <returns>The remainder that results from the division.</returns>
        /// <param name="dividend">The value to be divided.</param>
        /// <param name="divisor">The value to divide by.</param>
        /// <exception cref="DivideByZeroException">
        ///     <paramref name="divisor" /> is 0 (zero).
        /// </exception>
        public static BigInteger operator %(BigInteger dividend, BigInteger divisor)
        {
            var signNUm = 1;
            var signDen = 1;
            var regNum  = new BigIntegerBuilder(dividend, ref signNUm);
            var regDen  = new BigIntegerBuilder(divisor, ref signDen);

            regNum.Mod(ref regDen);
            return(regNum.GetInteger(signNUm));
        }
All Usage Examples Of System.Numerics.BigIntegerBuilder::Mod