题目:判断一个数是否能被11整除。
分析:大整数,模拟。直接模拟除法运算判断余数即可。
说明:╮(╯▽╰)╭。
#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <cmath>
using namespace std;
char buf[1001];
int value[1001];
int main()
{
while (~scanf("%s",buf)) {
if (buf[0] == '0' && !buf[1]) break;
int len = strlen(buf);
for (int i = 0 ; buf[i] ; ++ i)
value[i] = buf[len-1-i]-'0';
for (int i = len-1 ; i > 0 ; -- i) {
value[i-1] += value[i]%11*10;
value[i] %= 11;
}
printf("%s is ",buf);
if (value[0]%11) printf("not ");
printf("a multiple of 11.\n");
}
return 0;
}