私信TA

用户名:Praguetramp

访问量:29459

签 名:

等  级
排  名 19
经  验 19954
参赛次数 0
文章发表 130
年  龄 0
在职情况 待业
学  校
专  业

  自我简介:

aura

解题思路:     字符串操作

注意事项:     注意识别码为 X 的特殊情况的处理

参考代码:

import java.util.Scanner;

/**
 * 2021年2月16日  下午8:32:46
 * @author praguetramp
 */
public class Main {

	public static void main(String []args) {
		Scanner in =new Scanner(System.in);
		while(in.hasNext()) {
			char ISBN[] =in.nextLine().toCharArray();
			int cnt=1,last=0;  
			for(int i=0;i<ISBN.length-1;i++) {
				if(ISBN[i]!='-') {
					last=(last+(ISBN[i]-'0')*cnt)%11;   //计算识别码
					cnt++;
				}
			}
			if(ISBN[12]=='X'&&last==10)            //判断识别码为 X 的情况
 				System.out.println("Right");
			else{
				if(last==(ISBN[12]-'0'))
					System.out.println("Right");
				else {
					if(last==10)
						ISBN[12]='X';
					else 
						ISBN[12]=(char)(last+'0');
					for(char a:ISBN)
						System.out.print(a);
					System.out.println();
				}
			}
		}
		in.close();
	}
}


 

0.0分

3 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答

代码解释器

  评论区