码迷,mamicode.com
首页 > 其他好文 > 详细

201312-2ISBN编码

时间:2017-03-17 20:37:57      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:name   ace   else   for   namespace   std   i++   ++   使用   

//100分,进步的是使用了isdigit()函数判断字符是不是英文字母
#include<iostream>
#include<string>
#include<cctype>
using namespace std;
int main(){
string str;
cin>>str;
int a[10];
int len,i,sum = 0,j = 0;
len = str.length();
for(i=0;i<len-1;i++){
if(isdigit(str[i])){
a[j] = str[i] - ‘0‘;
j++;
}
}
for(i=0;i<j;i++){
sum += a[i]*(i+1);
}
if(isdigit(str[len-1])){
a[9] = str[len-1] - ‘0‘;
if(sum%11 == a[9]) cout<<"Right";
else {
if(sum%11==10) {
str[len-1] = ‘X‘;
cout<<str;
}
else {
str[len-1] = sum%11+‘0‘;
cout<<str;
}

}
}
else {
if(sum%11==10) cout<<"Right";
else {
str[len-1] = sum%11+‘0‘;
cout<<str;
}
}

return 0;
}

201312-2ISBN编码

标签:name   ace   else   for   namespace   std   i++   ++   使用   

原文地址:http://www.cnblogs.com/whitehouse2016/p/6568107.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!