检查了几遍,觉得没错,为啥只有30分?
查看原帖
检查了几遍,觉得没错,为啥只有30分?
725788
zyabc楼主2022/5/8 22:43
#include<bits/stdc++.h>
using namespace std;
int main()
{
	char isbn[13];
	cin>>isbn;
	int num[10],result=0;
	num[0]=isbn[0]-'0';
	num[1]=isbn[2]-'0';
	num[2]=isbn[3]-'0';
	num[3]=isbn[4]-'0';
	num[4]=isbn[6]-'0';
	num[5]=isbn[7]-'0';
	num[6]=isbn[8]-'0';	
	num[7]=isbn[9]-'0';
	num[8]=isbn[10]-'0';
	num[9]=isbn[12]-'0';
	for(int i=0;i<9;i++)
	{
		result+=num[i]*(i+1);

	}
	result=result%11;

	if(result<=9) {
		if(result==num[9]) cout<<"Right";
		else 
		{
			isbn[12]=result+'0';
			cout<<isbn;
		}
	}
	else 
	{    
		if(isbn[12]=='X') cout<<"Right";
		else 
		{
			isbn[12]='X';
			cout<<isbn;
		}
	}
	return 0;
}
2022/5/8 22:43
加载中...