当前位置: 首页 > article >正文

【Excel】身份证号最后一位“X”怎么计算

大多数人身份证号最后一位都是数字,但有个别号码最后一位却是“X"。
在这里插入图片描述如果你查百度,会得到如下答案:

当最后一位编码是10的时候,因为多出一位,所以就用X替换。

可大多数人不知道的是,这个10是怎么来的?是随机抽取的?

No! 它是用前17位号码算出来的:

在这里插入图片描述
如果你看上表有点头晕,兰色就用Excel表格一步步算给你看。
把身份证前17位拆分开来
在这里插入图片描述
在后面输入系列,然后相乘并求和
在这里插入图片描述
对D列求和并计算除以数字11后余数

=MOD(SUM(D2:D18),11)在这里插入图片描述
再从下表查找8对应的编码,结果为4。在这里插入图片描述
所以也可以看出韦小宝的身份证号是编造的假证件号。
看了这么多计算步骤是不是感觉有点麻烦,其实一个Excel公式就可以搞定!
=VLOOKUP(MOD(SUM(MID(A1,{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17},1){7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2}),11),{0,1;1,0;2,“X”;3,9;4,8;5,7;6,6;7,5;8,4;9,3;10,2},2,0)或=LOOKUP(MOD(SUM(MID(A2,ROW(1:17),1){7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2}),11),{0,1;1,0;2,“X”;3,9;4,8;5,7;6,6;7,5;8,4;9,3;10,2})
在这里插入图片描述
如果想验证一个身份证号码是否正确,还可以使用另一个公式A1中为身份证号码:(下面公式为数组公式,非365版本按Ctrl+shift+enter输入)=MOD(SUM(MID(A1,ROW(1:17),1)*{7;9;10;5;8;4;2;1;6;3;7;9;10;5;8;4;2})+IF(RIGHT(A1)=“X”,10,RIGHT(A1)),11)只要结果为1,身份证号码正确,否则错误
在这里插入图片描述
这几个公式同学们要收藏起来,将来可以用来验证身份证号码真伪,必竟最后一位计算过程复杂,如果胡编乱造最后一位很大机率是不对应的。


http://www.kler.cn/a/398734.html

相关文章:

  • 场景营销在企业定制开发 AI 智能名片 S2B2C 商城小程序中的应用与价值
  • 安全见闻(完整版)
  • 基于Python空气质量可视化及预测
  • windows工具 -- 使用rustdesk和云服务器自建远程桌面服务, 手机, PC, Mac, Linux远程桌面 (简洁明了)
  • 24-Ingest Pipeline Painless Script
  • 传奇996_24——变量lua
  • calico网络原理、组网方式
  • 开源科学工程技术软件介绍 – EDA工具KLayout
  • 计算机网络:运输层 —— TCP的流量控制
  • Django5 2024全栈开发指南(二):Django项目配置详解
  • 【C++进阶篇】——string类的使用
  • AntFlow 0.11.0版发布,增加springboot starter模块,一款设计上借鉴钉钉工作流的免费企业级审批流平台
  • aws(学习笔记第十三课) 向AWS的RDS导入既存数据
  • 递归基础斐波那契数(LeetCode——509.斐波那契数)
  • 刘艳兵-DBA043-什么是“虚拟列索引”?
  • 如何查看电脑支持的最大内存
  • 【Linux内核剖析】深入分析inet_init的处理机制
  • 自动驾驶系列—深入解析自动驾驶车联网技术及其应用场景
  • 说说TCP传输的三次握手四次挥手策略
  • [369]基于springboot的高校教师教研信息填报系统
  • Infisical开源密钥管理平台实战指南
  • 《Python 网络爬虫》
  • ‌DNN(深度神经网络)和CNN(卷积神经网络)区别
  • Cursor安装Windows / Ubuntu
  • 新160个crackme - 098-DueList.4
  • Ubuntu 的 ROS 操作系统 turtlebot3 导航仿真