【青少年编程】【四级】十字回文诗
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。
微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。
十字回文诗
十字回文诗,又称为转尾(鳞迭)连环回文诗,是古人创造的一种七言绝句诗体,由10个字连环往复,读成一首28个字的七绝。以清朝女诗人吴绛雪 《咏四季》中的春为例:莺啼绿柳弄春晴晓月明,十个字回环往复,可读成
以下28个字的七绝:
莺啼绿柳弄春晴(前七个字,正序读)
柳弄春晴晓月明(后七个字,正序读)
明月晓晴春弄柳(后七个字,倒序读)
晴春弄柳绿啼莺(前七个字,倒序读)
《咏四季》的另外三首分别为:
夏:香莲碧水动风凉夏日长
秋:秋江楚雁宿沙洲浅水流
冬:红炉透炭炙寒冬遇雪风
请根据十字回文诗的成诗规律,编写程序,将《咏四季》读成的四首七绝通过列表展示出来。
1. 准备工作
(1)背景:保留初始背景“背景1”;
(2)角色:隐藏初始角色“角色1”(小猫);
(3)创建列表“咏四季·春”、“咏四季·夏”、“咏四季·秋”、“咏四季·冬”。
2. 功能实现
(1)将其中一首十字回文诗生成28字七绝;
(2)将另外三首十字回文诗生成七绝;
(3)使用自制积木对程序进行抽象和化简;
(4)命名规范易读,并为代码添加合理注释。
提示:加粗红色字可供复制。
3. 设计思路与实现
(1)角色分析
角色:初始角色“角色1”(小猫)
(2)背景分析
背景:初始背景“背景1”
(3)所用积木块介绍
「a. 外观类」
在舞台中隐藏当前角色。
「b. 事件类」
程序开始积木块。 点击舞台区的绿旗,执行以绿旗开始的所有程序脚本。
「c. 控制类」
循环积木块:一遍一遍地执行包起来的积木序列。 重复执行指定的次数后停止,该积木块通常在角色移动等场景中使用。
条件判断语句,如果条件返回值为真(bool值),那么执行模块里面的积木指令,如果条件不成立,返回值为假,执行条件判断模块后面的程序指令。
「d. 运算类」
连接两个字符串,得到一个新的字符串。
取出字符串中所给位置的字符。
比较运算,左边等于右边返回true值(真),否则返回false值(假)。
「e. 变量类」
建立一个变量,输入变量名称,然后选择适用于所有角色还是适用于当前角色。
设置变量的值为给定值,通常用于初始化变量。
设置变量的值为自身的值加X。
建立一个列表,输入列表名称,然后选择适用于所有角色还是适用于当前角色。
将一个元素加入到列表的末尾。
清空列表。
「f. 自制积木类」
建立一个积木,输入积木名称,然后添加积木的参数,以及选择“运行时是否刷新屏幕”。
(4)角色、舞台背景设置
「a. 角色设置」
使用默认就好。
「b. 舞台背景设置」
使用默认就好。
(5)脚本编写
「a. 角色:」
创建变量“十字回文诗”,用来存储当前的十字回文。
创建变量“诗句”,用来存储七绝中的一句诗词。
创建变量“索引”,用来存储当前遍历十字回文的字符索引。
创建列表“咏四季·春”、“咏四季·夏”、“咏四季·秋”、“咏四季·冬”。
定义函数:“生成七绝”
本函数由两个参数构成,第一个参数为十字回文的文本,第二个参数为该文本修饰的季节。可根据不同的季节,将生成的七绝加入到不同的列表中。
生成诗句的规则是:
第一句,从第一个字符向后依次取七个字符,即顺序前七个字符; 第二句,从第四个字符向后依次取到末尾,即顺序后七个字符; 第三句,从最后一个字符向前依次取七个字符,即倒序后七个字符; 第四句,从第七个字符向前依次取到开头,即倒序前七个字符。
定义函数:“生成诗句”
本函数由四个参数构成,第一个参数为十字回文的文本,第二个参数为取该文本第一个字符的位置,第三个参数为取字符的方向,1为顺序,-1为倒序,第四个参数为该文本修饰的季节。可根据起始位置,以及方向来取出七个字符,就得到该七绝的一句诗,再根据不同的季节,将生成的诗句加入到不同的列表中。
客户端:
流程描述:
当按下绿旗时:
开始:点击小绿旗,也就是程序启动,就要执行后续的程序指令。 角色状态:隐藏小猫。 将“十字回文诗”设为“莺啼绿柳弄春晴晓月明”。 清空列表“咏四季·春”。 根据“十字回文诗”生成七绝,并加入到列表“咏四季·春”中。 将“十字回文诗”设为“香莲碧水动风凉夏日长”。 清空列表“咏四季·夏”。 根据“十字回文诗”生成七绝,并加入到列表“咏四季·夏”中。 将“十字回文诗”设为“秋江楚雁宿沙洲浅水流”。 清空列表“咏四季·秋”。 根据“十字回文诗”生成七绝,并加入到列表“咏四季·秋”中。 将“十字回文诗”设为“红炉透炭炙寒冬遇雪风”。 清空列表“咏四季·冬”。 根据“十字回文诗”生成七绝,并加入到列表“咏四季·冬”中。
(6)结果展现
4. 评分标准
(1)按要求创建列表;(2分)
(2)生成其中一首十字回文诗;(5分)
(3)生成另外三首回文诗;(4分)
(4)使用了自制积木对程序进行抽象和化简;(3分)
(5)变量、自制积木及其参数命名规范,注释合理易读。(1分)
5. 考点分析
四级考试大纲与说明
(一)考核目标
学生对编程软件的较强综合操作能力,考查使用软件进行数据处理的能力,同时对函数和过程的理解和使用进行考查,以及学生对已掌握知识的深度综合应用及思考更优程序方案,另针对参加 4 级考试的学生将进行结合分析和计算的情境考查。
(二)能力目标
通过本级考试的学生,逻辑推理能力很不错,对数据的处理,函数和过程等的理解和使用掌握得很不错,对已学知识的综合应用能力很好,具备一定的程序调试和优化能力。学生对编程软件的进一步综合操作能力,考查新建链表,字符串处理,循环的复杂运用,理解函数的作用范 围,理解多线程的概念,同时考查学生对已掌握知识的深度综合应用, 另针对参加 4 级考试的学生将进行难度更高的逻辑推理能力的考查。
(三)考试标准
1、理解并使用链表、函数和多线程。
1)能够新建链表; 2)能够完成对链表中数据的插入、删除; 3)字符串处理; 4)能够自己创建一个有返回值的函数; 5)理解函数的作用范围; 6)理解多线程的概念; 7)循环的复杂运用; 8)逻辑,算法过渡。
(四)知识块
[x] 1. 字符串:字符串操作,加密 [x] 2. 函数:不同类型函数的创建,参数的设置,返回值,函数的调用 [x] 3. 链表:创建链表,实现数据的增、删、改、查,显示和隐藏,找最值,平均值等 [x] 4. 大综合:前面所有知识点的综合使用,考查 [x] 5. 程序优化:使用已有知识进行问题的优化 [x] 6. 逻辑,算法过渡:分析和计算情境考察,如爬楼梯的方法(递归) [x] 7. 循环的复杂运用:循环的结构,循环的嵌套,递归调用
备注:
[x] 为本题涉及到的知识点。 [ ] 为需要掌握,但本题未涉及到的知识点。
(五)题型配比及分值