没有合适的资源?快使用搜索试试~ 我知道了~
首页【PTA】【作者: 赵冲 单位: 厦门大学】7-1 身份证校验_python
中国居民身份证校验码算法如下: 将身份证号码前面的17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。 将这17位数字和系数相乘的结果相加。用加出来和除以11,取余数。 余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字, 其分别对应的最后一位身份证的号码为1-0-X-9-8-7-6-5-4-3-2。余数和校验码的对应关系可以用公式:m=(12-n) mod 11计算,其中mod为求余运算,m为校验码,n为之前计算出来的余数。如果之前计算出的余数是3,第18位的校验码就是9。如果余数是2那么对应的
资源详情
资源推荐
【【PTA】【作者】【作者: 赵冲赵冲 单位单位: 厦门大学】厦门大学】7-1 身份证校验身份证校验
_python
中国居民身份证校验码算法如下:中国居民身份证校验码算法如下:
将身份证号码前面的17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7
-9-10-5-8-4-2。 将这17位数字和系数相乘的结果相加。用加出来和除以11,取余数。 余数只可能有0-1-2-3-4
-5-6-7-8-9-10这11个数字, 其分别对应的最后一位身份证的号码为1-0-X-9-8-7-6-5-4-3-2。余数和校
验码的对应关系可以用公式:m=(12-n) mod 11计算,其中mod为求余运算,m为校验码,n为之前计算出来的余数。如果之前
计算出的余数是3,第18位的校验码就是9。如果余数是2那么对应的校验码就是X,X实际是罗马数字10。 例如:某男性的身
份证号码为【53010219200508011x】, 我们看看这个身份证是不是合法的身份证。首先我们得出前17位的乘积和【(57)+
(39)+(010)+(15)+(08)+(24)+(12)+(91)+(26)+(03)+(07)+(59)+(010)+(85)+(08)+(14)+(1*2)】是189,然后用189除以11得出的
结果是189/11=17—-2,也就是说其余数是2。最后通过对应规则就可以知道余数2对应的检验码是X。所以,可以判定这是一
个正确的身份证号码。
请编写一个程序,输入身份证前17位后,计算并输出最后的校验码,
输入格式输入格式:
前17位的每个数字分别输入,中间用空格间隔
输出格式输出格式:
输出校验码,如果校验码是10,不必转成X
输入样例输入样例:
5 3 0 1 0 2 1 9 2 0 0 5 0 8 0 1 1
输出样例输出样例:
10
思路:思路:
使用split()函数处理输入样例。
代码如下:代码如下:
def check_id_data(n):
var=[7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2] var_id=['1','0','x','9','8','7','6','5','4','3','2'] n = str(n)
sum = 0
for i in range(0,17):
sum += int(n[i])*var[i] sum %= 11
print(var_id[sum])
a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q = input().split()
a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q =
eval(a),eval(b),eval(c),eval(d),eval(e),eval(f),eval(g),eval(h),eval(i),eval(j),eval(k),eval(l),eval(m),eval(n),eval(o),eval(p),eval(q)
n = str(a)+str(b)+str(c)+str(d)+str(e)+str(f)+str(g)+str(h)+str(i)+str(j)+str(k)+str(l)+str(m)+str(n)+str(o)+str(p)+str(q)
check_id_data(n)
参考自:https://blog.csdn.net/qq_21516633/article/details/103166438
作者:NWJTMSZJSZ
weixin_38643127
- 粉丝: 8
- 资源: 921
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功