BigInteger.ModPow(BigInteger, BigInteger, BigInteger) 方法

定义

对以某个数为底、以另一个数为指数的幂执行模数除法。

public static System.Numerics.BigInteger ModPow(System.Numerics.BigInteger value, System.Numerics.BigInteger exponent, System.Numerics.BigInteger modulus);

参数

value
BigInteger

要计算 exponent 次幂的数字。

exponent
BigInteger

value 进行幂运算的指数。

modulus
BigInteger

valueexponent 次幂要除以的数值。

返回

valueexponent 除以 modulus 后的余数。

例外

modulus 为零。

exponent 为负数。

示例

以下示例提供了调用 方法的 ModPow 简单说明。

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

注解

方法 ModPow 计算以下表达式:

(baseValue ^ 指数) 模数

若要在没有取模除法的情况下对 BigInteger 值执行指数运算,请使用 Pow 方法。

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

另请参阅