【查验身份证】一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。
校验码的计算规则如下:首先对前17位数字加权求和,
权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
然后将计算的和对11取模得到值Z;
最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8 9 10
M:1 0 X 9 8 7 6 5 4 3 2
n = int(input("输入个数:"))
iden = []
for i in range(n):print("第 {} 个:".format(i+1))iden.append(input())
flag = [1]*n
weight = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2]
z = [0,1,2,3,4,5,6,7,8,9,10]
m = [1,0,'X',9,8,7,6,5,4,3,2]
break_temp = 0
for i in range(n):sum = 0for j in range(17):if iden[i][j] == 'X':flag[i] = 0break_temp =1breakelse:sum += weight[j]*int(iden[i][j])         if break_temp == 1:break_temp = 0continueZ = sum%11if str(iden[i][17]) == str(m[Z]):flag[i] = 1else:flag[i] = 0
if 0 not in flag:print("All passed")
else:for i in range(len(flag)):if flag[i] == 0:print(iden[i])

【查验身份证】Python相关推荐

  1. 查验身份证python_PAT 1031 查验身份证(15)(C++Python)

    1031 查验身份证(15)(15 分) 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8, ...

  2. python查验身份证_PTA:Python解答1031 查验身份证

    1031 查验身份证 (15分) 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2, ...

  3. 浙大版《Python 程序设计》题目集 第3章-2 查验身份证

    第3章-2 查验身份证 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为: {7,9,10,5,8,4,2,1,6, ...

  4. C语言——实验一:查验身份证(身份证号码的校验码)

    前言 为什么我这个萌新要来写这篇文章?事情还要从上周三说起. 在上周三的程序设计基础课上,我们老师给我们全班同学布置了一项题为<实验一:查验身份证>的实验作业,这也是我第一次接触到实验作业 ...

  5. L1-016 查验身份证(2016年天梯赛模拟赛第8题)

    7-8 查验身份证(15 分) 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1 ...

  6. 团体程序设计天梯赛-练习集L1-016. 查验身份证

    L1-016. 查验身份证 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 一个合法的身份证号码由17位地区.日期编号和顺序编号 ...

  7. PTA第3章-2 查验身份证 (15 分)

    第3章-2 查验身份证 (15 分) 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4, ...

  8. C++学习之路 | PTA乙级—— 1031 查验身份证 (15 分)(精简)

    1031 查验身份证 (15 分) 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2 ...

  9. 7-54 查验身份证 (15 分)

    7-54 查验身份证 (15 分) 一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2 ...

最新文章

  1. rman备份后为什么要同时备份归档日志
  2. android sqlite 参数,Android SQLite3命令详解教程
  3. TS中补充的六个类型
  4. 阿里docker安装mysql_docker安装mysql
  5. 实训说明书 在线音乐平台项目规格说明书
  6. 18桥图片_世界上第一台70米泵车,采用10桥底盘,泵送速度可达200m/h
  7. Plain text, flat file, 及flat-file database 如何翻译
  8. Visual studio 2013安装及单元测试
  9. 索引更新:刚发布的文章就能被搜到,这是怎么做到的?
  10. 20175212童皓桢 类定义
  11. 中国电信修改光猫路由模式为桥接模式
  12. Mysql优化之explain你真的会吗?
  13. Android检测仪开发---BleBluetooth 多连接
  14. Embeded linux之网卡驱动
  15. tekton EventListener资源
  16. c语言莹源码,exp5/wc/client.c · 张雪莹20175227/ISSDF - Gitee.com
  17. MySQL设置utf8mb4编码
  18. 使用MPAndroidChart图标遇到的坑-X轴文字显示不全问题
  19. android普通应用写u盘,android设备应用读取外接U盘设备方法
  20. 服务器无响应 路由器,服务器无响应路由器

热门文章

  1. 【历史上的今天】3 月 10 日:互联网泡沫爆发;马云创建阿里巴巴;Twitter 联合创始人出生
  2. Eclipse搭建Spingboot开发环境(开普勒版本搭建超快)
  3. Mastercam X9-2019
  4. WKC秘制读(写)挂
  5. 解决Linux TIME_WAIT过多造成的问题
  6. 白帽子黑客与网络安全工程师教你Kali:如何在Windows计算机就能实现网络信息扫描和收集?
  7. 2022-2028全球与中国电子阅读器市场现状及未来发展趋势
  8. 关于传统蒙古文系统系列文章(三)
  9. XMind 8快捷键史上最全
  10. Windows11 上开发iOS是否可行呢?有什么解决方案呢