✔ 最佳答案
身份証號碼演算法
台灣身分證字號共有十碼,我們就將它表示成...
N1 N2 N3 N4 N5 N6 N7 N8 N9 N10
N1 : 一定是一個大寫英文字母,代表戶籍地
ex.A是台北市 B是台中市 C是基隆市......
N2 : 性別欄位:1為男性 2為女性
N3~N9 : 流水號
N10 : 檢測位元,首先要將第一個英文字轉換成數值
A=10 B=11 C=12 D=13 E=14 F=15 G=16 H=17 J=18 K=19 L=20 M=21
N=22 P=23 Q=24 R=25 S=26 T=27 U=28 V=29 W=30 X=31 Y=32 Z=33
I=34 O=35 ==>I,O 沒有錯,就是這樣
然後用下列算式計算,若餘數為 0 則為正確的身分證字號
(N1的十位數+N1的個位數x9+N2x8+N3x7+N4x6+N5x5+N6x4+N7x3+N8x2+N9+N10)÷10
-----------------------------------------------身分證字號驗算方法
首先,您必須認識每一組身分證字號中,各個數字代表了什麼不同的意義,請從以下這組
身
分證字號來分析:
A 1 0 0 0 4 6 6 4 1
這其中,A 代表地區編號,1 代表性別編號,1 代表檢查號碼。
驗算方式:
1.將整組身分證字號去掉頭尾的地區編號和檢查號碼,只取中間八個位數。
2.以這八個位數當被乘數,乘上 87654321 這一組乘數,每一個位數相乘時,只取相乘後
的
個位數,十位數則捨棄。
3.將相乘所得的八組個位數相加,所得的總和仍然只取個位數。
舉例:
我們現在就以上面那組身分證字號為例,實際檢算一遍。
A100046641 去掉頭尾,則只剩 10004664 八個位數。
接著套上算式
八個位數 1 0 0 0 4 6 6 4
乘上 8 7 6 5 4 3 2 1
等於 8 0 0 0 16 18 12 4
取以上個位數相加 --- 8+0+0+0+6+8+2+4 = 28 …. 取個位數 8
得到驗算結果是一個8的數字。
請利用下面這個對照表來找到各地區代碼:
編號
代碼
台 北 市
A
0
南 投 縣
M
0
台 中 市
B
9
彰 化 縣
N
9
基 隆 市
C
8
雲 林 縣
P
8
台 南 市
D
7
嘉 義 縣
Q
7
高 雄 市
E
6
台 南 縣
R
6
台 北 縣
F
F
5
高 雄 縣
S
5
宜 蘭 縣
G
4
屏 東 縣
T
4
桃 園 縣
H
3
花 蓮 縣
U
3
新 竹 縣
J
2
台 東 縣
V
2
苗 栗 縣
K
1
澎 湖 縣
X
2
台 中 縣
L
1
陽 明 山
Y
Y
1
最後的檢查公式是:
9-( 驗算數字+地區代碼 )=檢查數字
驗算數字是8,地區代碼是0,檢查數字是1所以我們套入數字來計算:
9-( 8+0 )=1
驗算數值相符,代表身分證字號正確。