您現在的位置是:首頁 > 武術
身份證號第18位是怎麼算出來的?
- 由 標準百科 發表于 武術
- 2023-01-03
18的個位上表示什麼
眾所周知,第二代身份證號共18位。前17位稱為本體碼,其中第1-6位是地址碼,第7-14位是出生日期碼,第15-17位是順序碼,第18位,也就是最後一位是校驗碼。
我感覺99%的人不會計算最後一位,那麼今天和大家一起學習一下。
計算加權因子(這個詞太專業了,我們稱為係數吧)。
把身份證號從最後一位(第18位,當然我們現在不知道是什麼數)往前依次排列,計算每一位上的係數。第x位的係數就是2的x-1次方除以11的餘數。比方從右向左數的第18位,也就是左數第1位,2的17次方等於131072,131072÷11等於11915餘數是7,那麼這一位的係數是7,以此類推,得出從第一位到第十七位的係數分別為:7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2。
將身份證前17 位數字和上面算出的係數逐一相乘,然後再加起來。
比方某人的身份證號前17位是37233119810413311,那麼就是3×7+7×9+2×10+3×5+3×8+1×4+1×2+9×1+8×6+1×3+0×7+4×9+1×10+3+5+3×8+1×4+1×2,結果是300。
將結果除以11,求餘數。
300÷11,結果是27,餘數是3。
用12去減這個餘數,如果結果小於10,那麼這個結果就是你要得到的校驗碼了;如果結果等於10,則校驗碼為X;如果等於11,則校驗碼為1;如果等於12,則校對碼為2。
如上例,餘數為3,那麼該人身份證號最後一位便是12-3,即9。
換一種說法,就是校驗碼(如果為10則用X代替)加上得到的餘數,除以11,求餘數,餘數為1才行。
透過以上的討論,您會計算您的身份證號最後一位了嗎?趕緊計算一下,看看對不對吧。歡迎留言或參與討論。
如果感覺興趣,請關注我,你會學到好多你不知道的冷知識