# BigInteger.ModPow Method (BigInteger, BigInteger, BigInteger)

.NET Framework (current version)

Note

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

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

Namespace:   System.Numerics
Assembly:  System.Numerics (in System.Numerics.dll)

## Syntax

```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.

## Exceptions

Exception Condition
DivideByZeroException

modulus is zero.

ArgumentOutOfRangeException

exponent is negative.

## Remarks

The ModPow method evaluates the following expression:

(baseValue ^ exponent) Mod modulus

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

## Examples

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
```

## Version Information

Universal Windows Platform
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 4.0
Windows Phone
Available since 8.1