求A^B后三位数的简易求法
要求:输入数据有多组,每组占一行,有两个整数组成A,B(1<=A,B<=10000),如果A=0,B=0,则表示输入结束,不作处理
输入样例:12 6
输出样例:984
输入样例:6789 10000
输出样例:1
实现代码:
#include <stdio.h>
int main(int argc, char *argv[])
{
int a,b;
while(scanf("%d%d",&a,&b)!=EOF){
if(a==0&&b==0) break;
int ans=1;
while(b!=0){
if(b%2==1){
ans*=a;
ans%=1000;
}
b/=2;
a*=a;
a%=1000;
}
printf("%d\n",ans);
}
return 0;
}
测试输出: