「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】或【Python】,即可进入。如果加入了之前的社群不需要重复加入。
我们将有关编程题目的教学视频已经发布到抖音号21252972100,小马老师上,可配合图文一起学习。
太空大战
1. 准备工作
(1)选择Galaxy背景;
(2)选择Rocketship角色、Ball角色和Balloon1角色。
2. 功能实现
(1)点击绿旗后,Rocketship角色始终跟随鼠标移动,计时器开始计时;
(2)Balloon1角色出现在舞台上方的随机位置,大小随机,造型随机,间隔随机0.5-3秒后,更换位置、大小和造型,如此重复;
(3)点击鼠标后,发射子弹。Ball角色从当前的Rocketship角色位置,向上方飞出,碰到边缘后,消失。连续点击鼠标,可连续发射子弹;
(4)子弹碰到Balloon1角色后,Balloon1角色消失,得分增加1,播放声音“pop”提示。等待随机0.5-3秒后,Balloon1角色重新出现在舞台上方的随机位置。
(5)游戏运行20秒后,说出得分5秒后,停止运行。
3. 设计思路与实现
(1)角色分析
- 角色:Rocketship、Ball、Balloon1
(2)背景分析
- 背景:Galaxy
(3)所用积木块介绍
a. 运动类
- 角色移动指定的步数,正数就是向前,负数就是向后。
- 将角色移动到舞台中央指定的X/Y坐标位置,默认坐标(x:0, y:0)。
- X的范围(-240, 240);Y的范围(-180, 180)。
- 将角色朝向某个指定的方向。
- 角色初始朝向右边,90°方向。
b. 外观类
- 在规定的时间内在舞台上显示输入的文字。
- 将角色的造型换成指定的造型。
- 将角色的大小调整为指定的值。
- 该积木块通常在角色初始化时使用。
- 在舞台中显示当前角色。
- 在舞台中隐藏当前角色。
c. 声音类
- 播放指定的声音,声音开始播放的同时立刻执行后面的积木指令。
d. 事件类
- 程序开始积木块。
- 点击舞台区的绿旗,执行以绿旗开始的所有程序脚本。
- 当角色被点击时,执行后面的程序指令。
e. 控制类
- 时间间隔,等待指定的时间后执行后面的指令。
- 循环积木块:一遍一遍地执行包起来的积木序列。
- 重复执行模块里面的积木指令,相当于一个死循环,永不停止,除非在某个地方结束脚本。
- 等待判断条件为真后继续执行。若判断条件为假,则一直等待。
- 将所有的角色和背景的脚本停止执行,下拉倒三角还可以选择“停止当前角色的其它脚本”和“这个脚本”。
- 当作为克隆体启动时,该克隆体执行的指令。
- 产生自己的一份克隆,下拉倒三角还可以选择其他角色。
- 删除克隆体。
f. 侦测类
- 判断当前角色是否碰到鼠标,下拉可以选择其它角色和舞台边缘。
- 鼠标当前的X坐标。
- 鼠标当前的Y坐标。
- 当我们打开Scratch的时候,计时器就工作了,它不停的计数,以”毫秒"为单位,不停的涨,换句话说,我们打开scratch多长时间,它就记了多长时间的值,当然,这个值对我们没有什么用,所以我们需要使用计时器的时候,先使用侦测里的计时器归零。
- 初始化计时器,让计时器归零重新开始计时。
g. 运算类
- 比较运算,左边大于右边返回true值(真),否则返回false值(假)。
- 比较运算,左边等于右边返回true值(真),否则返回false值(假)。
- 随机得到设定区间中的任一值。
h. 变量类
- 建立一个变量,输入变量名称,然后选择适用于所有角色还是适用于当前角色。
- 设置变量的值为给定值,通常用于初始化变量。
- 设置变量的值为自身的值加X。
(4)角色、舞台背景设置
a. 角色设置
删除默认的小猫角色,从角色库中导入题目要求的三个角色“Rocketship”、“Ball”、“Balloon1”。
b. 舞台背景设置
从背景库中导入题目要求的背景“Galaxy”。
(5)脚本编写
新建变量“得分”,用于记录子弹碰到Balloon1角色后的得分。
新建变量“显示”,用于记录状态下Balloon1是否显示。
a. 角色:Rocketship
流程描述:
当按下绿棋时:
- 开始:点击绿旗,程序启动,执行后续指令模块。
- 初始状态:面向90°方向。
- 变量初始化:得分 = 0。
- 计时器归零
- 重复执行:
- 移动到鼠标所在位置(x=鼠标的x坐标,y=鼠标的y坐标)。
- 如果 计时器 > 20,那么说“得分”5秒,停止所有脚本。
当角色被点击:
- 克隆Ball。
b. 角色:Ball
流程描述:
当按下绿棋时:
- 开始:点击绿旗,程序启动,执行后续指令模块。
- 初始状态:隐藏
当作为克隆体启动时:
- 初始朝向:面向0°方向。
- 初始位置:移动到“Rocketship”。
- 初始状态:显示。
- 重复执行:
- 移动5步。
- 如果碰到 舞台边缘,那么删除此克隆体。
c. 角色:Balloon1
流程描述:
当按下绿棋时:
- 开始:点击绿旗,程序启动,执行后续指令模块。
- 初始化变量:显示 = True。
- 重复执行:
- 等待 显示 == True。
- 显示
- 移动到舞台上方的随机位置。
- 大小设置为随机大小。
- 造成设置为随机造型。
- 等待0.5~3.0秒。
当按下绿棋时:
- 开始:点击绿旗,程序启动,执行后续指令模块。
- 重复执行:
- 等待 碰到Ball。
- 将得分增加1。
- 播放声音Pop。
- 隐藏。
- 将“显示”设为False。
- 等待 0.5~3.0秒。
- 将“显示”设为True。
4. 考点分析
四级考试大纲与说明
(一)考核目标
学生对编程软件的较强综合操作能力,考查使用软件进行数据处理的能力,同时对函数和过程的理解和使用进行考查,以及学生对已掌握知识的深度综合应用及思考更优程序方案,另针对参加 4 级考试的学生将进行结合分析和计算的情境考查。
(二)能力目标
通过本级考试的学生,逻辑推理能力很不错,对数据的处理,函数和过程等的理解和使用掌握得很不错,对已学知识的综合应用能力很好,具备一定的程序调试和优化能力。学生对编程软件的进一步综合操作能力,考查新建链表,字符串处理,循环的复杂运用,理解函数的作用范 围,理解多线程的概念,同时考查学生对已掌握知识的深度综合应用, 另针对参加 4 级考试的学生将进行难度更高的逻辑推理能力的考查。
(三)考试标准
1、理解并使用链表、函数和多线程。
- 1)能够新建链表;
- 2)能够完成对链表中数据的插入、删除;
- 3)字符串处理;
- 4)能够自己创建一个有返回值的函数;
- 5)理解函数的作用范围;
- 6)理解多线程的概念;
- 7)循环的复杂运用;
- 8)逻辑,算法过渡。
(四)知识块
- 1. 字符串:字符串操作,加密。
- 2. 函数:不同类型函数的创建,参数的设置,返回值,函数的调用。
- 3. 链表:创建链表,实现数据的增、删、改、查,显示和隐藏,找最值,平均值等。
- 4. 大综合:前面所有知识点的综合使用,考查。
- 5. 程序优化:使用已有知识进行问题的优化。
- 6. 逻辑,算法过渡:分析和计算情境考察,如爬楼梯的方法(递归)。
- 7. 循环的复杂运用:循环的结构,循环的嵌套,递归调用。
备注:
- 为本题涉及到的知识点。
- 为需要掌握,但本题未涉及到的知识点。
(五)题型配比及分值