Skip to content

Latest commit

 

History

History
48 lines (38 loc) · 916 Bytes

id_check.md

File metadata and controls

48 lines (38 loc) · 916 Bytes

身分證字號驗證

要做的事

使用測試驅動的開發流程,寫一個 api api/id-check,輸入字串之後,回傳該字串是否為合法的身分證字號。

身分證字號驗證規則

身分證字號第一個字一定是大寫的英文字母,其餘 9 個字必須為數字。

檢查編碼時,第一個英文字母會先依下表轉換為數字:

字母 數字
A 10
B 11
C 12
D 13
E 14
F 15
G 16
H 17
I 18
J 19
K 20
L 21
M 22
N 23
O 24
P 25
Q 26
R 27
S 28
T 29
U 30
V 31
W 32
X 33
Y 34
Z 35

轉換後的身分證字號(共11位數字)每一位數均有固定的權重。

權重由左往右依序為 『1 9 8 7 6 5 4 3 2 1 1』。

判斷身分證字號是否正確的方法為:各位數字與其相對應的權重相乘後再加總。

加總後的結果若為 10 的倍數,則為合法身分證字號。