%2计算:只看个位是奇数还是偶数
%3计算:所有数位加和%3
%4计算:最后两位%4
%5计算:最后一位%5
%6计算:(个位数字%6 + (从十位开始把各数位上的数字加起来)* 4 % 6 ) % 6
%7计算:1对7的余数为1
10对7的余数为3
100对7的余数为2
1000对7的余数为6
10000对7的余数为4
100000对7的余数为5
1000000对7的余数为1
...... 以(1, 3, 2, 6, 4, 5)的规律循环
%8计算:最后三位%8
%9计算:所有数位加和%9
其他取余计算:
#include<cstdio>
using namespace std;
int main()
{
int i, a2;
char a1[120];
while(scanf("%s%d", a1, &a2) != EOF)
{
int t;
for(i = 0; a1[i] != '\0'; i++)
{
t = 10*t + a1[i] - '0';
if(t > a2)
t %= a2;
}
printf("%d\n", t);
}
return 0;
}