文章

81

粉丝

0

获赞

282

访问

11.0k

头像
求解校验码 题解:
P1928 复旦大学机试题
发布于2025年3月19日 14:38
阅读数 90

#include<bits/stdc++.h>
using namespace std;
int main(){
	int num[10];
	int M=0,S=0;
	scanf("%1d-%1d%1d-%1d%1d%1d%1d%1d%1d",&num[0],&num[1],&num[2],&num[3],&num[4],&num[5],&num[6],&num[7],&num[8]);
	for(int i=10;i>=2;i--){
		S+=i*num[10-i];
	}
	M=S%11;
	int key = 11 - M;
	char k;
	if(key>=1&&key<=9){
		k='0'+key;
	}else if(key==10){
		k='X';
	}else{
		k='0';
	}
	
	for(int i=0;i<=8;i++){
		cout<<num[i];
		if(i==0||i==2||i==8){
		cout<<"-";
		}
	}
	cout<<k;
	cout<<endl;
	return 0;
	


}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发