12位商品编码验证

来源:互联网 发布:淘宝规则名词解释 编辑:程序博客网 时间:2024/06/15 07:49
package Runable_Test;


import java.math.BigDecimal;
import java.util.Scanner;
//商品编码验证
public class SPDM_JYM {


public static void main(String[] args) {
// TODO Auto-generated method stub


Scanner sc = new Scanner(System.in);
System.out.println("请输入12位的商品编码:");


if (sc.hasNextBigInteger()) {
BigDecimal shangpinbianma = new BigDecimal(sc.next());
if (shangpinbianma.toString().length() == 12) {


System.out.println("请输入12位的商品编码:" + shangpinbianma);
String spbm = shangpinbianma.toString();


int xrr[] = new int[12];
String ys;
for (int i = 11; i >= 0; i--) {
ys = spbm.substring(i, (i + 1));
System.out.println("ys=" + ys);
// 字符串转化数字
xrr[i] = Integer.parseInt(ys.toString());
System.out.println("xrr[" + i + "]=" + xrr[i]);
}
int no_1 = (xrr[0] + xrr[2] + xrr[4] + xrr[6] + xrr[8] + xrr[10]);
System.out.println("NO-1=" + no_1);
int no_2 = (xrr[1] + xrr[3] + xrr[5] + xrr[7] + xrr[9] + xrr[11]);
System.out.println("NO-2=" + no_2);
int no_count = no_1 + no_2 * 3;
System.out.println("NO-COUNT=" + no_count);
int yzm = 10 - (no_count % 10);
System.out.println("该商品的验证位的数字是:" + yzm);
// 13位验证码
// 数字转化字符串
String yzw = String.valueOf(yzm);
String yzm_13 = spbm + yzw;
System.out.println("该商品的验证码全长是:" + yzm_13);


} else {
System.out.println("你输入的商品编码有误!!!");
}
} else {
System.out.println("你输入的商品编码有非数字字符!!!");
}
}


}
原创粉丝点击