身份證號碼 (Identification)的驗證,可以算是一般大專院校資管、資工和資科系最基本的練習了;這一篇文章主要是介紹島內身份證號碼的規則。
身份證號碼是由10碼所組成;第1碼為英文,代表出生地;第2碼─非1即2─1代表男生,2代表女生;最後1碼為檢查碼 (Check Sum)。
1. 第1碼代表出生地的英文需轉換為數字,如下:
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 (連江縣)
2. 將第1步的英文字母轉換成數字之後,將個位數乘以9,再加上十位數。
3. 將第2碼至第9碼的數字依序乘上8、7、6、....、1。
4. 將第2步及第3步的值加總。
5. 第4步的值,除以10之後的餘數,用10減去該餘數,結果就是第10碼的檢查碼;若餘數為0,檢查碼就是0。
Example: 身份證號碼為A123456789
1. A所代表的數字為10,1 + (0 * 9) = 1
2. (1 * 8) + (2 * 7) + (3 * 6) + (4 * 5) + (5 * 4) + (6 * 3) + (7 * 2) + (8 * 1)
= 8 + 14 + 18 + 20 + 20 + 18 + 14 + 8 = 120
3. 1 + 120 = 121, 121 / 10 = 12....1, 10 - 1 = 9
結論:A123456789這個身份證號碼不能亂用,因為是真有其人!!
沒有留言:
張貼留言