package com.inbuild;
public class Shengfenzheng {
/**
* @param args
*/
public static void main(String[] args) {
String s="441621*******421";//前17位的
String[] ss=s.split("");
int sum =0;
int end =0;
System.out.println("ss.length=="+ss.length);
for(int i=1;i<18;i++){
Integer num =0;
try{
num=Integer.parseInt(ss[i]);
System.out.println("num==="+num);
}catch(NumberFormatException e){}
switch (i){
case 1:sum=sum+num*7;break;
case 2:sum=sum+num*9;break;
case 3:sum=sum+num*10;break;
case 4:sum=sum+num*5;break;
case 5:sum=sum+num*8;break;
case 6:sum=sum+num*4;break;
case 7:sum=sum+num*2;break;
case 8:sum=sum+num*1;break;
case 9:sum=sum+num*6;break;
case 10:sum=sum+num*3;break;
case 11:sum=sum+num*7;break;
case 12:sum=sum+num*9;break;
case 13:sum=sum+num*10;break;
case 14:sum=sum+num*5;break;
case 15:sum=sum+num*8;break;
case 16:sum=sum+num*4;break;
case 17:sum=sum+num*2;break;
}
System.out.println(sum);
}
end=sum%11;
String endstring="";
switch (end){
case 0:endstring="1";break;
case 1:endstring="0";break;
case 2:endstring="X";break;
case 3:endstring="9";break;
case 4:endstring="8";break;
case 5:endstring="7";break;
case 6:endstring="6";break;
case 7:endstring="5";break;
case 8:endstring="4";break;
case 9:endstring="3";break;
case 10:endstring="2";break;
}
System.out.println("您的身份证最后一位是:"+endstring);
}
}
分享到:
相关推荐
5. 计算累加和`iS`对11取模的结果`iY`,这步是为了确定最后一位校验码的位置。 6. 根据`iY`的值,从`szVerCode`数组中取出对应的校验码字符,返回给调用者。 在提供的代码中,`doVerify`函数实现了上述的计算逻辑。...
基于python 2.7编写。使用例子: python genCheckNumber.py 40010019800101000 则会输出最后一位校验位。
- 中国18位身份证号码由17位数字和最后一位校验码组成。前6位代表地区代码,接着8位是出生日期,然后3位为顺序号(奇数分配给男性,偶数分配给女性),最后1位是校验码。 2. **地区编码验证** - 地区代码是根据...
4. **校验码匹配**:根据余数确定最后一位校验码。余数可以是0到10,对应的校验码分别是1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2。 下面是一个使用SQL实现的身份证校验代码示例,这段代码使用Oracle SQL的WITH子句和...
而“X”在身份证号码中表示最后一位校验码,它代表罗马数字的10,用于满足校验规则。 这个自封装的`IdcardValidator.jar`是一个Java类库,内部包含了处理身份证验证的核心逻辑。它的主要功能是检查输入的身份证号码...
公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码。其含义如下: 1. 地址码:表示编码对象常住户口所在县...
4. 第18位是校验码:根据前17位数字通过特定算法计算得出,用于检验身份证号码的正确性。校验码可以是0-9中的任何数字,也可以是X,代表10。 在“IDCard.sql”这个文件中,很可能包含了全国各地身份证号段的具体...
S = Sum(Ai * Wi), i=0,…….16 (现在的身份证号码都是18位长,其中最后一位是校验位,15位的身份证号码好像不用了) Ai对应身份证号码,Wi则为用于加权计算的值,它一串固定的数值,应该是根据某种规则得出的吧,...
首先检查输入字符串长度是否为18位,如果是,则去掉最后一位校验码。然后遍历字符串,提取每个字符并转换成整数,再与权重系数相乘求和,最后根据求和结果计算余数并找到对应的校验码。 3. **`uptoeighteen` 方法*...
在中国,身份证号码是18位数字,包含了个人出生日期、性别、出生地等信息,并通过特定算法进行校验,确保号码的唯一性和准确性。这个Excel加载项是为了方便用户在处理大量数据时,快速验证身份证号码的合法性。 ...
IMEI由15位数字组成,分为四部分:TAC(Type Allocation Code,类型分配码)、FAC(Final Assembly Code,最后装配码)、SNR(Serial Number,序列号)和CD(Check Digit,校验码)。IMEI生成器是一种工具,用于生成...
2. 输入解析:用户输入身份证号码后,系统首先会验证号码的合法性,包括长度、校验码等,确保号码真实有效。 3. 匹配查询:系统通过解析出身份证号码的前六位,与数据库中的数据进行匹配,找到对应的地区信息。 4....
6. **校验码验证**:最后一位是校验码,通过前17位数字和特定的加权模11算法计算得出。将输入的校验码与计算出的校验码进行对比,一致则验证通过,否则失败。 在易语言中实现这个模块,可能需要用到字符串处理函数...
4. 校验码(1位):最后一位是校验码,用于验证整个身份证号码的正确性。它可以通过特定算法计算得出,确保身份证号码的唯一性和准确性。 在实现身份证验证系统时,开发者可能会用到以下技术点: - XML解析:使用...
身份证校验可以通过身份证校验公式计算校验码,该公式考虑了每一位数字的权重以及最后一位校验码。对于IP地址,只需检查每部分数字是否在0-255之间,且总共不超过四部分。随机数字键盘则可能需要一个生成随机数的...
身份证号码,全称是“中华人民共和国居民身份证号码”,是由18位数字组成的,包括6位地址码、8位出生日期码、3位顺序码和1位校验码。校验码的计算方式基于前17位数字,通过一种特定的加权和模11算法得出,确保了...
- 最后,用总和对11取模,得到的余数与最后一位校验码比较,若相等则验证通过。 4. **身份证号码的加权因子**: - 加权因子是1到17位数字的倍数,依次为:7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2。...
身份证号码的有效性检测是一个涉及到多个层面的复杂过程,包括但不限于长度和格式校验、省份编码的合法性校验、生日日期的合法性校验以及最后一位校验码的校验。本文提供了一个较为完整的JavaScript函数实现,可以...
身份证第18位校验码规则介绍: 1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。 2、将这17位数字和系数相乘的结果相加。 3...