查看單個文章
舊 2006-04-17, 07:11 PM   #9 (permalink)
fcya 帥哥
管理版主
 
fcya 的頭像
榮譽勳章
UID - 5355
在線等級: 級別:51 | 在線時長:2840小時 | 升級還需:72小時級別:51 | 在線時長:2840小時 | 升級還需:72小時級別:51 | 在線時長:2840小時 | 升級還需:72小時級別:51 | 在線時長:2840小時 | 升級還需:72小時級別:51 | 在線時長:2840小時 | 升級還需:72小時級別:51 | 在線時長:2840小時 | 升級還需:72小時
註冊日期: 2002-12-07
住址: 士林某處
文章: 6584
精華: 0
現金: 12059 金幣
資產: 35093 金幣
預設

引用:
作者: uplander
我記得看過類似案例
好像是以前戶政事務所還沒有電腦化
辦事員抄寫錯誤
所以身分字號沒法通過電腦檢測


最後一碼的算法:

第一位為英文字母
第二個數字是男女生之分,男生為 1,女生為 2

身份證字號後面八個數字之中,前面七個可以隨便打
最後一位為檢查碼,必須經過之前一個字母與8個數字的組合計算後得出

檢查碼的運算原則:

英文代號以下表轉換成數字
A=10 台北市 J=18 新竹縣 S=26 高雄縣
B=11 台中市 K=19 苗栗縣 T=27 屏東縣
C=12 基隆市 L=20 台中縣 U=28 花蓮縣
D=13 台南市 M=21 南投縣 V=29 台東縣
E=14 高雄市 N=22 彰化縣 W=32 金門縣
F=15 台北縣 O=35 新竹市 X=30 澎湖縣
G=16 宜蘭縣 P=23 雲林縣 Y=31 陽明山
H=17 桃園縣 Q=24 嘉義縣 Z=33 連江縣
I=34 嘉義市 R=25 台南縣

(1)英文轉成的數字, 個位數乘9再加上十位數
(2)各數字從右到左依次乘1、2、3、4....8

(1)與(2)的和,除10求出餘數
用10減該餘數,結果就是檢查碼,若餘數為0,檢查碼就是 0。


範例:
F21234567
一.換算為 1521234567
二.(1*1)+(5*9)+(2*8)+(1*7)+(2*6)+(3*5)+(4*4)+(5*3)+(6*2)+(7*1)
三.= 146
四.146/10 = 14 .... 6
五.10 - 6 = 4 (檢查號碼)

這個解譯我能接受...因為我出生在沒有電腦的年代.比較麻煩的是每每我都要拿出身份證
來證明我不是胡扯的
__________________
老了不想像以往只是打嘴泡閒扯蛋
fcya 目前離線  
送花文章: 5180, 收花文章: 3072 篇, 收花: 13272 次
回覆時引用此帖