【青少年编程】【二级】寻找宝石
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。
微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。
题目
1. 准备工作
(1)背景:Blue Sky2;
(2)角色:Cat、Crystal、回形迷宫(手绘)。
2. 功能实现
(1)如上图所示,将小猫和宝石放置在迷宫左下角位置,中间有白墙分隔,调整小猫和宝石的大小;
(2)利用键盘的上下左右键分别控制小猫面向四个方向移动,移动过程中小猫脑袋不朝下;
(3)小猫在移动过程中不能碰到白墙,否则返回原点;
(4)当小猫成功碰到宝石,说“游戏胜利”,全部程序停止。
3. 设计思路与实现
(1)角色分析
角色:Cat、Crystal、回形迷宫(手绘)
(2)背景分析
背景:Blue Sky2
(3)所用积木块介绍
a. 运动类
设定角色旋转方式为“左右翻转”,下拉可选“不可旋转”,“任意旋转”。 这三种旋转方式区别在于:左右翻转(正常转向后角色上下结构不变),不可旋转(不能进行旋转),任意旋转(转向后上下颠倒,Scratch默认旋转方式)。
将角色移动到舞台中央指定的X/Y坐标位置,默认坐标(x:0,y:0)。
将角色朝向某个指定的方向。
角色移动指定的步数,正数就是向前,负数就是向后。
b. 外观类
在规定的时间内在舞台上显示输入的文字。
换成指定的背景 该积木块通常在初始化舞台背景时使用
将角色的大小调整为指定的值。 该积木块通常在角色初始化时使用。
c. 事件类
程序开始积木块。 点击舞台区的绿旗,执行以绿旗开始的所有程序脚本。
d. 控制类
循环积木块:一遍一遍地执行包起来的积木序列。 重复执行模块里面的积木指令,相当于一个死循环,永不停止,除非在某个地方结束脚本。
条件判断语句,如果条件返回值为真(bool值),那么执行模块里面的积木指令,如果条件不成立,返回值为假,执行条件判断模块后面的程序指令。
将所有的角色和背景的脚本停止执行,下拉倒三角还可以选择“停止当前角色的其它脚本”和“这个脚本”。
e. 侦测类
检测是否碰到指定的颜色,如果是返回bool值“真”,否则返回bool值“假”。
判断当前角色是否碰到鼠标,下拉可以选择其它角色和舞台边缘。
判断是否按下空格键,下拉可以选择键盘上的任意键
(4)角色、舞台背景设置
a. 角色设置
保留默认角色小猫,并从角色库中导入“Crystal”。
点击绘制,以便手绘回形迷宫。
利用矩形工具【1】和直线工具【2】绘制回形迷宫。选择无填充【3】,轮廓选择为白色【4】,线条宽度为20【5】。
按照题目所给样子绘制完毕后,把角色名称【6】修改为回形迷宫。
b. 舞台背景设置
从背景库中导入“Blue Sky2”。
(5)脚本编写
a. 角色:Cat
流程描述1:
开始:点击小绿旗,也就是程序启动,就要执行后续的程序指令。 初始化角色的旋转方式,设置为“左右反转”(题目要求:移动过程中小猫脑袋不朝下)。 初始化面朝方向:90度方向。 初始化位置:移动到(-179, -67)(迷宫左下角,由于小猫在移动过程中碰到白墙会返回初始点,所以要记录这个初始点)。 初始大小:设置为50。 重复执行: 如果碰到白墙,返回到起始点。 如果碰到角色“Crystal”,说“游戏胜利”,全部程序停止。
流程描述2:
开始:点击小绿旗,也就是程序启动,就要执行后续的程序指令。 重复执行: 如果按下“↑”,面向0度,移动10步 如果按下“↓”,面向180度,移动10步 如果按下“←”,面向-90度,移动10步 如果按下“→”,面向90度,移动10步
注意:遇到“停止全部脚本”的时候,要用循环和条件语句来侦测是否按下了按键,而不是使用事件。
b. 背景:
流程描述:
开始:点击绿旗,也就是程序启动,就要执行后续的程序指令。 初始化背景:将背景设置为“Blue Sky2”。
(6)结果展现
4. 考点分析
二级考试大纲与说明
(一)考核目标
学生对编程软件的进一步操作能力,对多角色的位置,上下层关系等设置,侦测和选择语句以及综合不同模块进行问题的解决;考查对各循环语句的掌握程度。同时针对参加 2 级考试的学生将进行一般逻辑推理和总结归纳能力的考查。
(二)能力目标
通过本级考试的学生,有一定的逻辑推理能力,熟练使用侦测和选择语句解决问题,能独立完成包含分支语句,循环语句等比较综合的案例。
(三)考试标准
1、理解编程工具的进阶相关概念,掌握编程工具中进阶模块的使用。
1)理解舞台区层的概念; 2)理解舞台区坐标系的概念; 3)能够使用选择结构的指令; 4)能够使用实现循环的指令; 5)能够使用画笔及设置画笔的大小粗细; 6)能够控制角色的大小,特效和可视状态; 7)能够使用侦测相关的指令; 8)能够录入声音,并且对声音进行简单处理; 9)掌握数学运算,逻辑运算和关系运算并应用; 10)理解二进制、十进制以及十六进制之间的区别并能进行转换。
2、能应用编程工具中的指令实现进阶效果的程序。
1)掌握选择结构、循环结构的流程图画法; 2)程序包含选择结构,处理多个条件之间的关系; 3)程序中包含循环结构; 4)程序中包含侦测场景的实现; 5)程序中能使用画笔实现效果; 6)程序中按照要求对不同角色进行不同效果的设置。
(四)知识块
[x] 1. 多角色设置:图层,坐标,移动到鼠标,移动到固定坐标,…秒内移动,角色的大小,特效,可视状态,视频侦测中物体的运动和方向 [ ] 2. 画笔:画笔的大小粗细设置,抬笔,落笔,擦除 [x] 3. 选择语句:……那么……,如果…那么……否则……,选择结 构流程图 [ ] 4. 运算:数学运算,关系运算(大于,小于,等于),逻辑运算(且,或,不成立),字符连接,四舍五入 [x] 5. 移动中的侦测:碰到鼠标指针|角色|边缘等,颜色侦测,键盘控制 [x] 6. 循环语句:重复,重复直到…,重复固定次数,循环结构流程图 [ ] 7. 声音的进阶:录入声音,声音的音量控制,声音的截取,设置播放时长和特效,停止 [ ] 8. 逻辑推理,编程数学:负数的概念,图形推理,逻辑推理,规律总结
备注:
[x] 为本题涉及到的知识点。 [ ] 为需要掌握,但本题未涉及到的知识点。
(五)题型配比及分值