昊轩啥也不是 @ 2021-08-20 16:30:48
为什么输入0-670-82162-4不能输出Right而是输出0-670-82162-0啊?
因为之前的没人回还被刷下去了就再发一次
#include<bits/stdc++.h>
using namespace std;
int main(){
char s[13];
int s1[13],len=0,ans=0,sum=1,i;
cin>>s;
int size=strlen(s);
for(i=0;i<size;i++){
if(s[i]!='-'){
s1[len]=s[i]-48;
len++;
}
}
for(i=0;i<len;i++){
ans+=s1[i]*sum;
sum++;
}
ans=ans%11;
if(ans==10){
if(s[size-1]=='X'){
cout<<"Right";
}
else{
for(i=0;i<size-1;i++) cout<<s[i];
cout<<"X";
}
}
else{
if(ans==s[size-1]-48){
cout<<"Right";
}
else{
for(i=0;i<size-1;i++) cout<<s[i];
cout<<ans;
}
}
return 0;
}
by xiaoxixi1234567 @ 2021-08-20 16:35:16
一名蒟蒻小声嘀咕:这是什么的程序啊?看不懂欸
虽然大部分代码都看不懂
by Mine_King @ 2021-08-20 16:37:25
你把最后一位也算进去了。也就是说,
for(i=0;i<len;i++){
要改成
for(i=0;i<len-1;i++){
by hhn001 @ 2021-08-20 16:43:34
@xiaoxixi1234567 瞬间打脸
by xiaoxixi1234567 @ 2021-08-20 16:48:34
@Mine_King 题外话:请问超级大佬的头像是国家队吗(02和男主?)
by 昊轩啥也不是 @ 2021-08-20 16:54:11
@Mine_King 我ac了,谢谢大佬