Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

BigInteger.ModPow Method

Performs modulus division on a number raised to the power of another number.

Namespace:  System.Numerics
Assemblies:   System.Runtime.Numerics (in System.Runtime.Numerics.dll)
  System.Numerics (in System.Numerics.dll)

public static BigInteger ModPow(
	BigInteger value,
	BigInteger exponent,
	BigInteger modulus
)

Parameters

value
Type: System.Numerics.BigInteger

The number to raise to the exponent power.

exponent
Type: System.Numerics.BigInteger

The exponent to raise value by.

modulus
Type: System.Numerics.BigInteger

The number by which to divide value raised to the exponent power.

Return Value

Type: System.Numerics.BigInteger
The remainder after dividing valueexponent by modulus.

ExceptionCondition
DivideByZeroException

modulus is zero.

ArgumentOutOfRangeException

exponent is negative.

The ModPow method evaluates the following expression:

(baseValue ^ exponent) Mod modulus

To perform exponentiation on BigInteger values without modulus division, use the Pow method.

The following example provides a simple illustration of calling the ModPow method.

using System;
using System.Numerics;

public class Class1
{
   public static void Main()
   {
      BigInteger number = 10;
      int exponent = 3;
      BigInteger modulus = 30;
      Console.WriteLine("({0}^{1}) Mod {2} = {3}", 
                        number, exponent, modulus, 
                        BigInteger.ModPow(number, exponent, modulus));    
   }
}
// The example displays the following output: 
//      (10^3) Mod 30 = 10

.NET Framework

Supported in: 4.6, 4.5, 4

.NET Framework Client Profile

Supported in: 4

.NET for Windows Phone apps

Supported in: Windows Phone 8.1

Portable Class Library

Supported in: Portable Class Library
Show:
© 2015 Microsoft