题目描述
一个整数,只知道前几位,不知道末二位,被另一个整数除尽了,那么该数的末二位该是什么呢
输入格式
输入数据有若干组,每组数据包含二个整数a,b(0<a<10000, 10<b<100),若遇到0 0则处理结束
输出格式
对应每组数据,将满足条件的所有尾数在一行内输出,格式见样本输出。同组数据的输出,其每个尾数之间空一格,行末没有空格。
样例输入
200 40
1992 95
0 0
样例输出
00 40 80
15
思路
先将被除数尾部添加两位0,然后与除数求余,得到小于基本数的数字,之后用除数的倍数减去这个数字就是后两位数了
#include<stdio.h>
void printfs(int lost, int y) {
int scort = y;//除数的倍数
if (lost==0)
printf("00 ");
while (scort-lost < 100) {
printf("%02d ", scort - lost);
scort = scort+ y;//除数的倍数
}
printf("\n");
}
int main() {
int x,y,k;
scanf("%d %d", &x, &y);
do {
int lost = x*100 % y;//被除数相对除数的余数
printfs(lost, y);
scanf("%d %d", &x, &y);
} while (x != 0 && y != 0);
return 0;
}