- ISBN号码
- 2016-09-20 13:48:56 @
#include<cstdio>
#include<cstring>
char isbn[15];
int num[12];
int main(){
scanf("%s",isbn);
int cnt=0,x=0;
for(int i=0;i<strlen(isbn);i++)
if(isbn[i]>='0'&&isbn[i]<='9') num[cnt++]=isbn[i]-'0';
for(int i=0;i<9;i++)
x=(x+num[i]*(i+1))%11;
if(x==(isbn[strlen(isbn)-1]-'0')) printf("Right\n");
else{
for(int i=0;i<strlen(isbn)-1;i++)
printf("%c",isbn[i]);
if(x==10) printf("X\n");
else printf("%d\n",x);
}
return 0;
}
3,6过不了QAQ
1 条评论
-
lrj124 LV 10 @ 2016-09-20 14:15:36
错误已用*标出
#include<cstdio>
#include<cstring>
char isbn[15];
int num[12];
int main(){
scanf("%s",isbn);
int cnt=0,x=0;
for(int i=0;i<strlen(isbn);i++)
if(isbn[i]>='0'&&isbn[i]<='9') num[cnt++]=isbn[i]-'0';
for(int i=0;i<9;i++)
x=(x+num[i]*(i+1))%11;
if(x==(isbn[strlen(isbn)-1]-'0') ***|| (x == 10 && isbn[strlen(isbn)-1] == 'X')*** ) printf("Right\n");
else{
for(int i=0;i<strlen(isbn)-1;i++)
printf("%c",isbn[i]);
if(x==10) printf("X\n");
else printf("%d\n",x);
}
return 0;
}
- 1