<span style="font-size:18px;">package For;
import java.util.Scanner;
public class forTest07 {
/**
* 计算条形码的第十三位数字
* 692116851128
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个12位数的数字");
String s = sc.next();
//2.判断字符串的长度是12位
//length() 去获得字符串的长度
if (s.length() != 12){
System.out.println("你输入的长度不对,请重新输入!");
return;
}
/*
* 第一步:取出该数的奇数位的和:
* 第二步:取出该数的偶数位的和:
* */
int c1=0;//奇数位的和
int c2=0;//偶数位的和
//i=0,2,4,6,8,10 奇数位的值
// i+1 1,3,5,7,9,11
//取奇数、偶数
for (int i=0; i < s.length(); i+=2){
//奇数位值
char c = s.charAt(i);
//奇数位的和
c1 = c1+c-48;
//偶数位的值
char c3 = s.charAt(i+1);
//偶数位的和
c2 = c2+c3-48;
}
//计算奇数位值的和
int cc = c1+c2*3; //110
//去结果的个位数
cc %= 10;
//用十减去这个个位数
cc=10-cc;
cc=cc%10;
System.out.println("第13位验证码为"+ s + cc);
}
}</span>