怎样计算身份证的后四位数字?

如题所述

身份证的最后一位是校验友码,可以计算。前10位不可计算。
公式:
1、将前面的身份证号码17位数分别乘以不同的系数。第i位对应的数为[2^(18-i)]mod11。从第一位到第十七位的系数分别为:7
9
10
5
8
4
2
1
6
3
7
9
10
5
8
4
2

2、将这17位数字和系数相乘的结果相加;
3、用加出来和除以11,看余数是多少?;
4、余数只可能有0
1
2
3
4
5
6
7
8
9
10这11个数字。其分别对应的最后一位身份证的号码为1
0
X
9
8
7
6
5
4
3
2;
5、通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的Ⅹ。如果余数是10,身份证的最后一位号码就是2;
例如:某男性的身份证号码是34052419800101001X。我们要看看这个身份证是不是合法的身份证。
首先:我们得出,前17位的乘积和是189
然后:用189除以11得出的结果是17
+
2/11,也就是说余数是2。
最后:通过对应规则就可以知道余数2对应的数字是x。所以,这是一个合格的身份证号码。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-16
顺序码(第十五位至十七位)
  表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。
  校验码(第十八位数)
  (1)十七位数字本体码加权求和公式
  S
=
Sum(Ai*Wi),i=0,1,2……16,先对前17位数字的权求和
  Ai:表示第i位置上的身份证号码数字值
  Wi:表示第i位置上的加权因子(i=1、2、…17)
  Wi:7
9
10
5
8
4
2
1
6
3
7
9
10
5
8
4
2
  (2)计算模(除以11得到余数Y)
  Y=mod(S,11)
  (3)通过模得到对应的校验码
    Y:
0 1 2 3 4 5 6 7 8 9 10
  校验码:1 0 X 9 8 7 6 5 4 3 2  (X为罗数字的10)