c++ - 平方的大数的模数

标签 c++ modular-arithmetic

我有很多我想拿走剩下的。例如 300^31。当我尝试使用 % 运算符时,它说我不能在 double 上使用它,因为它只适用于整数。有计算函数吗?

我尝试使用 a=pow(b,x)%d;

最佳答案

如果b, xd 都是整数,你可以使用

int expoModulo(int b, int x, int d) {
    int a = 1;
    for(int i=0; i<x; i++) {
        a = (a*b)%d;
    }
    return a;
}

关于c++ - 平方的大数的模数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37735155/

相关文章:

c - C中线性同余发生器的快速模乘模素数

Java模块化划分

c++ - 与 sprintf 斗争......愚蠢的事情?

c++ - 是什么导致样式表渗入子小部件

c++ - 显示函数的枚举值

c++ - 尝试将前一个节点链接到要删除的节点后的节点时出错

c++ - 对非常大的数字执行 nCr 和逆阶乘 (MODm)

c - 模幂函数对于c中的大输入生成不正确的结果

algorithm - 选择 mod 值的标准

c++ - 从 engOpen(..) 启动 matlab,被通知引擎被关闭