永发信息网

一个数的N次方,再对某数求余,有比较好的方法知道余数的吗

答案:4  悬赏:30  手机版
解决时间 2021-11-16 08:07
  • 提问者网友:蓝琪梦莎
  • 2021-11-15 19:22
一个数的N次方,再对某数求余,有比较好的方法知道余数的吗
最佳答案
  • 五星知识达人网友:玩世
  • 2021-11-15 20:26
//用离散的方法求
#include
void main(){
int y=3029382;
int x=2374859;
int z=36123;
int result0=y%z; //第一次求余后的结果
int result=y%z;
for(int i=1;i<3029382;i++)
{
result*=result0;
result%=z;
}
cout<}
全部回答
  • 1楼网友:舊物识亽
  • 2021-11-15 22:19
用离散的思维做就不会溢出 我只写循环的程序 函数 变量的声明 就免了哈
long int x=2374859;
long int y=36123;
long int sum;
sum=x%y;
for(long int i=1;i<3029382;i++)
{ sum=sum%y;
sum=sum*sum;
sum=sum%y;
sum=sum*sum*sum;
}
return sum;
endl;
  • 2楼网友:低音帝王
  • 2021-11-15 22:06
2374859的3029382次方。。这个毫无疑问的,肯定会溢出了。
你可以这样,先用2374859对36123求余,再平方,再求余,再立方……这样一直做下去(如果你学过离散数学,就知道原理了)。
肯定的是,不会溢出。当然程序难度就上升了一点,不过相信你,没问题的,呵呵。
  • 3楼网友:野味小生
  • 2021-11-15 21:27
函数名: pow
功 能: 指数函数(x的y次方)
用 法: double pow(double x, double y);

求余就用%就可以
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯