18-Bit-ID-Kartenüberprüfungsalgorithmus
ID -Kartenüberprüfungscode -Algorithmus
So generieren Sie ID -Kartenüberprüfungscode:
∑ (ai × wi) (mod11)
I: Zeigt die Positionsnummer an, einschließlich des Verifizierungscode von links;
AI repräsentiert den Zahlenzeichenwert an der I-ten Position;
Der Gewichtungsfaktor an der I-ten Position von WI, sein Wert WI = MOD (Leistung (2, (n-1)), 11)
I181716151413121110987654321
WI79105842163791058421
Entsprechender Verifizierungscode:
∑ (ai × wi) (mod11) 012345678910
Überprüfen Sie den Code -Zeichenwert AI10x98765432
Hier ist die Überprüfungsfunktion:
FunktionenFzjy (num)
iflen (num) = 15Then
cid = links (num, 6) & "19" & rechts (num, 9)
ElseIFlen (num) = 17Orlen (num) = 18Then
cid = links (num, 17)
Endif
NSUM = MID (CID, 1,1)*7
nsum = nsum+mid (cid, 2,1)*9
nsum = nsum+mid (cid, 3,1)*10
nsum = nsum+mid (cid, 4,1)*5
nsum = nsum+mid (cid, 5,1)*8
nsum = nsum+mid (cid, 6,1)*4
nsum = nsum+mid (cid, 7,1)*2
nsum = nsum+mid (cid, 8,1)*1
nsum = nsum+mid (cid, 9,1)*6
nsum = nsum+mid (cid, 10,1)*3
nsum = nsum+mid (cid, 11,1)*7
nsum = nsum+mid (cid, 12,1)*9
nsum = nsum+mid (cid, 13,1)*10
nsum = nsum+mid (cid, 14,1)*5
nsum = nsum+mid (cid, 15,1)*8
nsum = nsum+mid (cid, 16,1)*4
nsum = nsum+mid (cid, 17,1)*2
'* Berechnen Sie das Scheckbit
check_number = 12-nsummod11
Ifcheck_number = 10thecheck_number = "x" elseifcheck_number = 12thecheck_number = "1" Elseifcheck_Number = 11Thecheck_Number = "0" endifsfzjy = check_number
Endfunktion
Andere Überprüfungen:
Geschlecht und Geburtsdatum:
sfznum = id nummer
lenx = len (sfznum)
iflenx = 15Then
yy = "19" & Mid (Xian, 7,2)
MM = MID (XIAN, 9,2)
DD = MID (XIAN, 11,2)
AA = MID (XIAN, 15,1) '15 -Digit-Identitätskarte kann 15. eingestuft werden, kann in 2 Frauen unterteilt werden
Endif
iflenx = 18Then
yy = mid (xian, 7,4)
MM = MID (XIAN, 11,2)
DD = MID (XIAN, 13,2)