/*信用卡号校验*/
#include<iostream.h>
#include<stdio.h>
#include<string>
void check(char * string)
{
int s_single=0,s_double=0;
for(int i=strlen(string)-2;i>=0;i=i-2)
{ s_single+=(string[i]-48);
printf("%d\n",string[i]-48);}
printf("%d\n",s_single);
for(i=strlen(string)-3;i>=0;i=i-2)
{//如果乘积两位数,则将其减去9 不是对9取余
if((string[i]-48)*2>9)
{
s_double+=((string[i]-48)*2)-9;
printf("%d\n",((string[i]-48)*2)-9);
}
else {s_double+=((string[i]-48)*2);
printf("%d\n",(string[i]-48)*2);
}
}
printf("%d\n",s_double);
if((s_single+s_double)%10==0)
printf("成功");
else
printf("失败");
}
int main()
{
char string[20];
fgets(string,strlen(string),stdin);
//printf("%d\n",strlen(string));
/*
FILE *stream;
if((stream=fopen("in2.txt","r"))!=NULL)
{
if(fgets(string,strlen(string),stream)==NULL)
printf("fgets error\n");
else
printf("%s\n",string);
fclose(stream);
}*/
check(string);
return 0;
}