201312-2 ISBN号码
实现
#include <iostream>
#define MAXN 0x10
char ISBN_str[MAXN];
int main() {
std::cin >> ISBN_str;
int i,cnt = 1, id = 0;
for (i = 0;i < 11;++i) {
if (ISBN_str[i] >= '0'
&& ISBN_str[i] <= '9') {
id += (cnt++) * (ISBN_str[i] - '0');
}
}
id = id % 11;
if ((id != 10 && id == (ISBN_str[12] - '0'))
|| (id == 10 && ISBN_str[12] == 'X')) {
std::cout << "Right";
return 0;
}
ISBN_str[12] = (id == 10)?'X':(id + '0');
std::cout << ISBN_str;
}