刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

22.身份证号有效性检验
中国的身份证号码由18位数字组成,其中前6位是地区代码,接下来的8位是出生日期(YYYYMMDD格式),然后是3位顺序码(其中第17位奇数分配给男性,偶数分配给女性),最后一位是校验码。
编写一个程序,要求用户输入一个身份证号码,然后检验这个号码是否有效。有效性检验需要满足以下条件:
\1. 身份证号码的位数必须是18位;
\2. 前17位是数字,最后一位是数字或者是字母"X";
\3. 校验码计算正确。
校验码计算方法:
\1. 将身份证号码前17位数字分别乘以不同的系数。从第一位到第十七位的系数分别为:7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2。
\2. 将这17位数字和系数相乘的结果相加。
\3. 将相加后的结果除以11,得到余数。
\4. 根据余数通过查表得到对应的校验码,对应关系为:0-1, 1-0, 2-X, 3-9, 4-8, 5-7, 6-6, 7-5, 8-4, 9-3, 10-2。
1.准备工作
(1)默认小猫角色,添加角色Button2,添加文字“开始验证”;
(2)创建一个变量“身份证号”,在舞台上大字显示;
(3)默认白色背景。
2.功能实现
(1)点击绿旗,询问“请输入一个身份证号”,变量“身份证号”大字显示输入的身份证号;
(3)检验位数是否为18位,如果不是,小猫说“位数不对”2秒,程序结束;
(4)检验前17位是否是数字,第18位是否是数字或者字母"X",如果不是,小猫说“输入错误”2秒,程序结束;
(5)检验校验码是否正确,如果不正确,小猫说“校验码错误”2秒,程序结束。
(6)上面检查都通过,小猫说“身份证号码验证正确”2秒。

使用微信搜索喵呜刷题,轻松应对考试!

答案:

解析:

一、准备工作

  1. 创建小猫角色,并添加角色Button2,设置其文字为"开始验证"。
  2. 创建一个变量"身份证号",用于在舞台上显示输入的身份证号码。
  3. 设置背景颜色为白色。

二、功能实现

  1. 点击绿旗时,使用询问功能获取用户输入的身份证号码,并将该号码赋值给变量"身份证号"。
  2. 检查变量"身份证号"的长度是否为18位。如果不是,则让小猫说出"位数不对",等待2秒,然后结束程序。
  3. 检查变量"身份证号"的前17位是否为数字,第18位是否为数字或字母"X"。如果不是,则让小猫说出"输入错误",等待2秒,然后结束程序。
  4. 对于校验码的计算和验证,需要进行以下步骤:
    a. 将身份证号码前17位数字与对应的系数相乘(系数按照给定的顺序)。
    b. 将乘积相加。
    c. 将结果除以11,得到余数。
    d. 根据余数通过查表得到对应的校验码。如果计算出的校验码与身份证号的第18位不符,则让小猫说出"校验码错误",等待2秒,然后结束程序。
  5. 如果上述所有检查都通过,则让小猫说出"身份证号码验证正确",并等待2秒。

注意:具体的实现细节可能需要根据Scratch的具体版本和界面进行微调。上述描述只是一个大致的框架,具体的编程实现需要依据Scratch的语法和指令进行。另外,由于涉及到身份证号的隐私性,实际使用时需要确保符合相关法律法规的要求。

创作类型:
原创

本文链接:22.身份证号有效性检验中国的身份证号码由18位数字组成,其中前6位是地区代码,接下来的8位是出生日

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share