[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥真题,这是Scratch蓝桥真题解析教程系列第209讲。
第16届蓝桥第2次STEMA测评已于2024年11月24日落下帷幕,编程题一共有5题(初级组只有前4道编程题),分别如下:
直升机队列,本题是2024年11月24日举行的蓝桥STEMA测评Scratch编程初/中级组编程第4题。题目要求编程创作直升机队列作品。运行程序后,在舞台上呈现2行3列的直升机队列,并通过按空格键来控制直升机的旋转。
先来看看题目的要求吧。
一.题目说明
编程实现:
直升机队列。
具体要求:
1). 点击绿旗,角色、背景如图所示;
2). 1秒后,舞台上出现6架直升机;
3). 直升机整齐排列成2行3列,如图所示;
4). 6架直升机出现后,螺旋桨不断旋转;
5). 按一次空格键,螺旋桨停止旋转;
6). 再按一次键盘空格键,螺桨不断旋转;
7). 重复执行具体要求5)、6)。
二.思路分析
编程实现:
直升机队列。
具体要求:
1). 点击绿旗,角色、背景如图所示;
2). 1秒后,舞台上出现6架直升机;
3). 直升机整齐排列成2行3列,如图所示;
4). 6架直升机出现后,螺旋桨不断旋转;
5). 按一次空格键,螺旋桨停止旋转;
6). 再按一次键盘空格键,螺桨不断旋转;
7). 重复执行具体要求5)、6)。
三.编程实现
根据上面的思路分析,我们分3步来编写程序:
-
定义自制积木克隆直升机
-
按空格键改变开关状态
-
显示直升机并旋转
1. 定义自制积木克隆直升机
直接使用“克隆4兄弟”模型,编写自制积木如下:
非常经典的一段代码,强调两点:
1). 在定义自制积木时,勾选“在运行时不刷新屏幕”,确保瞬间完成6架直升机的克隆;
2). 这里的起点坐标和增加的距离,可以自行调整,尽量和题目要求中的效果保持一致即可;
2. 按空格键改变开关状态
在Scratch编程中按空格键通常有如下两种方式:
-
使用事件模块中的“当按下空格键”指令;
-
使用侦测模块中的“按下空格键”指令;
使用哪一种比较好呢?
很显然,我们应该选择后者,而且要写在绿旗指令下,也就是在本体中进行侦测。
由于这里有克隆体,如果使用前者,那么本体和克隆体都会执行代码,会多次修改变量的值。
同理,如果在克隆体中使用侦测指令,那么每个克隆体都会执行代码,同样会多次修改变量。
在直升机角色中编写代码如下:
代码不多,说明3点:
1). 变量“开关”的初始值设置为1,默认是旋转状态;
2). 处理按键的时候使用了“汉堡包”结构,先等待按下空格键,再等待松开空格键,这样可以避免长按的时候反复切换开关;
3). 变量“开关”的值只有1和0两种取值,二者的和为1,所以直接使用“1 - 开关”就可以切换开关,这是一个数学小技巧,可以极大地简化代码;
3. 显示直升机并旋转
在直升机角色中,继续编写代码如下:
代码非常简单吧,当开关=1的时候,就切换造型。由于计算机执行指令的时间非常快,这里增加了“等待0.1秒”指令。
至此,整个作品就创作好了。
四.总结与思考
本题是初/中级组编程部分第4题,分数为70分,积木块数量33个左右,涉及到的知识点主要包括:
-
克隆编程;
-
按键处理;
-
变量的使用;
-
自制积木;
这是stema测评的第4题,难度中等吧,创作时间约15分钟左右。这里的重点有两个,一是快速克隆2行3列的6架直升机,二是按空格键开启和停止直升机的旋转。
本教程中提到的两个模型,一定要熟练掌握:
-
克隆4兄弟;
-
汉堡包结构;
前者用于实现多行多列的克隆场景,只要是找到规律的,都可以使用这个模型,包括三角形、金字塔等;后者通常用于按键处理,避免长按出现的bug。
超平老师给你留一道思考题,如果要克隆如下图所示的直升机阵列,该怎么做呢?
如果你觉得文章对你有帮助,别忘了点赞和转发,予人玫瑰,手有余香😄