A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© z黑马h 中级黑马   /  2014-2-25 23:59  /  860 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

传入你要验证商品的13条码就能知道真假。
取前12位     奇数位数字相加   =  sum_1
                  偶数位数字相加*3   = sum_2
           num = ( sum_1+ sum_2)%10;
           10-num=结果;
           结果== 如果等于第13位数字,表示该商品真的.
          

public static boolean verify_1 (String str){
                int sum_1 = 0;//偶数
                int sum_2 = 0;//奇数和
                for (int x = 0;x<str.length()-1 ;x++ ){
                        if((x+1)%2==0){
                                sum_1+= (str.charAt(x)-'0');
                        }else{
                                sum_2+= (str.charAt(x)-'0');
                        }
               
                }
                System.out.println(sum_1);
                System.out.println(sum_2);
                int num = (sum_1*3+sum_2)%10;
                return 10-num == str.charAt(str.length()-1)-'0';
        }

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马