中国电子学会图形化四级编程题:解密

「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。

我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老师上,大家可以关注一下。

解密

罗马共和国的恺撒曾经用一种特殊的加密方式和他的将军们联系,他是这样做的:把一个单词里的每一个字母都向后移,比如A向后移3位,变成D,B就变成E,以此类推。等到X的时候,会变成A,Y变成B,Z变成C。请你编写一段脚本,在输入加密内容后,能够还原出加密前的内容。

01

02

03

1. 准备工作

保留舞台的小猫,白色背景。

2. 功能实现

点击绿旗以后,输入加密内容,小猫会说出正确的加密前的内容。比如输入:“khoor”,小猫会说:“hello”。

3. 设计思路与实现

(1)角色分析

  • 角色:默认角色小猫

(2)背景分析

  • 背景:默认背景(无色)

(3)所用积木块介绍

a. 外观类

  • 在规定的时间内在舞台上显示输入的文字。

b. 事件类

  • 程序开始积木块。
  • 点击舞台区的绿旗,执行以绿旗开始的所有程序脚本。

c. 控制类

  • 循环积木块:一遍一遍地执行包起来的积木序列。
  • 重复执行指定的次数后停止,该积木块通常在角色移动等场景中使用。

  • 条件判断语句,如果条件满足执行那么模块里面的积木指令,如果条件不成立,返回值为假,那么执行否则模块里面的积木指令。

d. 侦测类

  • 角色发出询问,并在舞台下边框弹出对话框,等待用户的输入回答。

  • 实时的侦测用户所输入的回答,并存储在“回答”变量中。

e. 运算类

  • 比较运算,左边大于右边返回true值(真),否则返回false值(假)。

  • 连接两个字符串,得到一个新的字符串。

  • 取出字符串中所给位置的字符。

  • 获取所给字符串的长度,即该字符串包含字符的个数。

  • 算术运算,返回左边与右边的和。

  • 算术运算,返回左边与右边的差。

f. 变量类

  • 建立一个变量,输入变量名称,然后选择适用于所有角色还是适用于当前角色。

  • 设置变量的值为给定值,通常用于初始化变量。

  • 设置变量的值为自身的值加X。

  • 建立一个列表,输入列表名称,然后选择适用于所有角色还是适用于当前角色。

  • 将一个元素加入到列表的末尾。

  • 获取列表中索引为X的项目。

  • 获取列表中项目第一个为X的索引号。

g. 自制积木类

(4)角色、舞台背景设置

a. 角色设置

默认角色设置,无需修改角色造型。

b. 舞台背景设置

默认舞台背景设置,无需修改舞台背景。

(5)脚本编写

新建列表“字母表”,用于存储26个字母的列表。

新建变量“原文”,用于存储解密后的原文。

新建变量“i”,用于存储遍历密文时的索引位置。

新建变量“编号”,用于存储字符在字母表中的序号。

定义函数“初始化字母表”,没有参数,用于在列表中记录字母表。

函数:初始化字母表。

a. 角色:小猫

按照az给字符编号1到26,即字母表的索引号。字母dz的原文是aw,向前推3个字符,即当前编号 - 3。而ac的原文是xz,即当前编号 + 23。

流程描述:

点击小绿旗时:

  1. 开始:点击绿旗,也就是程序启动,就要执行后续的程序指令。
  2. 初始化字母表,通过字母表的索引来实现密文的还原。
  3. 初始化变量:原文 = 空,i = 1。
  4. 重复执行 回答的字符数次:遍历密文的每个字符
    • 编号 = 字母表中第一个 回答的第i个字符 的编号。
    • 如果 编号 > 3, 那么,原文 = 原文 + 字母表的第 编号-3 项
    • 否则 原文 = 原文 + 字母表的第 编号 + 23 项
    • i = i + 1
  5. 小猫说“加密前的内容是:XXX”,2秒。

4. 评分标准

(1)小猫能询问输入 (2分)

(2)能正确解密 (8分)

(3)能使用列表 (5分)

5. 考点分析

四级考试大纲与说明

(一)考核目标

学生对编程软件的较强综合操作能力,考查使用软件进行数据处理的能力,同时对函数和过程的理解和使用进行考查,以及学生对已掌握知识的深度综合应用及思考更优程序方案,另针对参加 4 级考试的学生将进行结合分析和计算的情境考查。

(二)能力目标

通过本级考试的学生,逻辑推理能力很不错,对数据的处理,函数和过程等的理解和使用掌握得很不错,对已学知识的综合应用能力很好,具备一定的程序调试和优化能力。学生对编程软件的进一步综合操作能力,考查新建链表,字符串处理,循环的复杂运用,理解函数的作用范 围,理解多线程的概念,同时考查学生对已掌握知识的深度综合应用, 另针对参加 4 级考试的学生将进行难度更高的逻辑推理能力的考查。

(三)考试标准

1、理解并使用链表、函数和多线程。

  • 1)能够新建链表;
  • 2)能够完成对链表中数据的插入、删除;
  • 3)字符串处理;
  • 4)能够自己创建一个有返回值的函数;
  • 5)理解函数的作用范围;
  • 6)理解多线程的概念;
  • 7)循环的复杂运用;
  • 8)逻辑,算法过渡。

(四)知识块

  • 1. 字符串:字符串操作,加密
  • 2. 函数:不同类型函数的创建,参数的设置,返回值,函数的调用
  • 3. 链表:创建链表,实现数据的增、删、改、查,显示和隐藏,找最值,平均值等
  • 4. 大综合:前面所有知识点的综合使用,考查
  • 5. 程序优化:使用已有知识进行问题的优化
  • 6. 逻辑,算法过渡:分析和计算情境考察,如爬楼梯的方法(递归)
  • 7. 循环的复杂运用:循环的结构,循环的嵌套,递归调用

备注:

  • 为本题涉及到的知识点。
  • 为需要掌握,但本题未涉及到的知识点。

(五)题型配比及分值

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青少年编程备考

感谢您的支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值