解開香港身份證號碼之謎!


身份證號碼的「結構」,可以用 XYabcdef(z) 表示。「X」可能是「空格」或是一個英文字母,「Y」則必定是英文字母。「abcdef」代表一個六位數字,而「z」是作為檢碼之用,它的可能選擇是 { 0,1,2,...,9,A(代表10) } 。這些代號的背後,都可配上一個編碼值。透過編碼值,便可找出 9X + 8Y + 7a + 6b + 5c + 4d + 3e + 2f + z 的總和。該總和特別之處,是必須被 11 整除。利用這特點,我們便能找出括號內的數字。試試看!


(實例示範)
要找出身份證括號內的數字 (z) ,需先計算出「9X + 8Y + 7a + 6b + 5c + 4d + 3e + 2f」的總和。設總和為 S 。當 S 除以 11 時,得商數 q 和餘數 R 。根據除法算式, S = 11q + R ,或 R = S - 11q 。


例如:K548683(?)


--------------------------------------------------------------------------------

■由於 ( S + z ) 可被 11 整除,所以


z = 11 - R
= 11 - ( S - 11q )
得 z = 11Q - S ( 設 Q = q + 1 )
因為 z ≧ 0 , 11Q - S ≧ 0
Q ≧ S ÷ 11 ( Q 必須是整數 )

■以上的身份證號碼為例 : K548653(?)


X ≡「空格」= 58
Y ≡ K = 20
S = (9x58)+(8x20)+(7x5)+(6x4)+(5x8)+(4x6)+(3x5)+(2x3)
= 826


■因為Q ≧ S ÷ 11


∴Q ≧ 826 ÷ 11 = 75.1 , 整數 Q 為 76

∴(?) = z = 11x76 - 826 = 10 ≡A

■該身份證號碼應是 K548653(A)。  (A是代表0)

 

X 或 Y 編碼值

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



您有興趣可以檢算一下,自己的身份號碼括號內的數字,看看是否吻合?