身分證檢查

字母權重

字母:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

權重:10, 11, 12, 13, 14, 15, 16, 17, 34, 18, 19, 20, 21, 22, 35, 23, 24, 25, 26, 27, 28, 29, 32, 30, 31, 33

將字母權重拆成:L1、L2

後面九個字母拆成9個數字:N1, N2, N3, N4, N5, N6, N7, N8, N9

計算總和:Sum = L1 + L2 * 9 + N1 * 8 + N2 * 7 + N3 * 6 + N4 * 5 + N5 * 4 + N6 * 3 + N7 * 2 + N8 + N9

Sum可以被10整除為正確,否則錯誤!!

C++陣列宣告:


VB.Net宣告:

'身份證字母權值對照陣列

Public ID_Letter() As Char = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"}

Public ID_Num() As Integer = {10, 11, 12, 13, 14, 15, 16, 17, 34, 18, 19, 20, 21, 22, 35, 23, 24, 25, 26, 27, 28, 29, 32, 30, 31, 33}

Python字典宣告:

id_dict = {'A':10,'B':11,'C':12,'D':13,'E':14,'F':15,'G':16,'H':17,'I':34,

'J':18,'K':19,'L':20,'M':21,'N':22,'O':35,'P':23,'Q':24,'R':25,

'S':26,'T':27,'U':28,'V':29,'W':32,'X':30,'Y':31,'Z':33}

Python寫法參考:https://steam.oxxostudio.tw/category/python/example/id-number-check.html


驗證規則參考網址:https://wisdom-life.in/generator/taiwain-id-generator