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

微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。

捡垃圾游戏

做一个捡垃圾的小游戏,一小朋友乱丢垃圾,垃圾的图像可以到角色库里取,也可以自己画,丢下10个大小不一的垃圾,要求用克隆体产生,用鼠标去捡(碰到鼠标并单击鼠标),能够记录垃圾的个数,最后能记录捡完垃圾时间。

1. 准备工作

(1)从角色库中自行选择一个角色或者绘制一个角色,作为垃圾;

(2)保留白色背景。

2. 功能实现

(1)点击绿旗,角色克隆10次作为10个垃圾,大小不一,位置随机;

(2)点击克隆体,垃圾消失,变量“垃圾个数”增加一;

(3)舞台左上角有一个变量“时间”,记录垃圾出现到所有垃圾被捡完所用的时间。

3. 设计思路与实现

(1)角色分析

  • 角色:从角色库中自行选择一个角色或者绘制一个角色,作为垃圾。这里从角色库中选择角色“Bread”作为垃圾。

(2)背景分析

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

(3)所用积木块介绍

a. 运动类

  • 角色移动到随机位置,下拉可选“鼠标指针”或其他角色。

b. 外观类

  • 将角色的大小调整为指定的值。
  • 该积木块通常在角色初始化时使用。

  • 在舞台中显示当前角色。

  • 在舞台中隐藏当前角色。

c. 事件类

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

d. 控制类

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

  • 循环积木块:一遍一遍地执行包起来的积木序列。
  • 重复执行模块里面的积木指令,相当于一个死循环,永不停止,除非在某个地方结束脚本。

  • 条件判断语句,如果条件返回值为真(bool值),那么执行模块里面的积木指令,如果条件不成立,返回值为假,执行条件判断模块后面的程序指令。

  • 将所有的角色和背景的脚本停止执行,下拉倒三角还可以选择“停止当前角色的其它脚本”和“这个脚本”。

  • 当作为克隆体启动时,该克隆体执行的指令

  • 产生自己的一份克隆,下拉倒三角还可以选择其他角色

  • 删除克隆体

e. 侦测类

  • 判断当前角色是否碰到鼠标,下拉可以选择其它角色和舞台边缘。

  • 检测是否按下鼠标,获取一个为真或假的布尔值。
  • 按下鼠标,既可以是鼠标的左键,也可以是鼠标的右键。

  • 当我们打开Scratch的时候,计时器就工作了,它不停的计数,以”毫秒"为单位,不停的涨,换句话说,我们打开scratch多长时间,它就记了多长时间的值,当然,这个值对我们没有什么用,所以我们需要使用计时器的时候,先使用侦测里的计时器归零。

  • 初始化计时器,让计时器归零重新开始计时

f. 运算类

  • 随机得到设定区间中的任一值。

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

  • 逻辑与运算,两个条件,只有两个条件都为真的情况,逻辑运算才返回true值(真),只要满足一个条件为假,则整个逻辑运算返回false值(假)。

g. 变量类

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

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

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

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

a. 角色设置

按照题目要求,删除默认的小猫角色。

在角色区,点击“选择一个角色”菜单,从角色库中选择角色“Bread”作为垃圾。

按照题目要求创建两个变量,“垃圾个数”记录捡起垃圾的个数,“时间”记录垃圾出现到所有垃圾被捡完所用的时间。

b. 舞台背景设置

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

(5)脚本编写

“克隆自己”的本质就是创建一个跟自己当前状态一摸一样的角色。

题目要求“角色克隆10次作为10个垃圾”,即先把本体隐藏起来,克隆十个隐藏的跟自己一摸一样的角色,当作为克隆体启动时,再把克隆的角色显示出来即可。

a. 角色:

流程描述:

当按下绿棋时:

  1. 开始:点击小绿旗,也就是程序启动,就要执行后续的程序指令。
  2. 角色状态:隐藏本体。
  3. 初始化变量“垃圾个数”等于0。
  4. 重复执行10次,克隆10个垃圾:
    • 克隆自己,即克隆一个垃圾
  5. 计时器归零,以方便统计时间。

当克隆体启动时:

  1. 显示克隆的对象。
  2. 初始状态:将大小设置为一个随机值。
  3. 初始位置:移动到舞台的随机位置。
  4. 重复执行:
    • 将变量“时间”设置为计时器,即显示从计时器归零,到现在程序运行的时间。
    • 如果鼠标点击到垃圾,那么将“垃圾个数”增加1,删除此克隆体。
    • 如果10个垃圾都点击完毕,那么停止全部脚本。

(6)结果展现

插入最后的视频

4. 考点分析

三级考试大纲与说明

(一)考核目标

进一步认识编程软件的高级功能,对随机数的产生、变量的设置,基于变量的逻辑运算与关系运算的组合使用,解决实际问题;考查画笔模块的更高级操作,应用广播来传递数据,应用克隆来生成克隆体,并灵活控制克隆体;考查对选择语句、循环语句的嵌套使用,以及运用循环简化多次的反复操作程序的理解程度。同时针对参加 3 级考试的学生 将进行多种情况的逻辑处理和交互控制能力的考查。

(二)能力目标

学生对编程软件的进一步综合操作能力,考查对随机数,变量,广播,克隆等知识的掌握,同时考查学生对已掌握知识的深度综合应用,另针 对参加 3 级考试的学生将进行难度更高的逻辑推理能力的考查。

(三)考试标准

1、掌握编程环境的高级功能,并理解其中的基本概念。

  • 1)能够新建、删除变量,修改变量名;
  • 2)能够设定、增减变量值,在舞台区显示、隐藏变量;
  • 3)能够灵活使用画笔及设置画笔的各项参数;
  • 4)掌握逻辑运算与关系运算的组合使用;
  • 5)能够运用循环简化多次的反复操作程序;
  • 6)能够应用广播来传递数据,实现不同角色之间的交互;
  • 7)能够理解广播和广播并等待的区别;
  • 8)能够应用克隆来生成克隆体,并灵活控制克隆体。

2、理解并在程序中使用随机数和变量。

  • 1)理解随机数的概念,能够产生一个随机数;
  • 2)理解变量的概念,理解变量的作用域;
  • 3)能够通过变量的变化让程序跳转到不同的部分;
  • 4)程序中包含不同条件选择语句的嵌套;
  • 5)程序中包含循环语句的嵌套;
  • 6)程序中包含根据选择语句的真假跳出循环程序;
  • 7)循环语句、选择语句嵌套的综合运用。

(四)知识块

  • 1. 随机数:随机数的产生,随机数的应用场景判定选取
  • 2. 变量:新建变量,初始化变量,修改变量名,删除变量,变量值的设定、增减,变量值变化引起效果的变化,变量的显示和隐藏,变量设置为滑杆模式, 变量的作用域,不同应用场景
  • 3. 循环语句:运用计数循环简化多次的反复操作程序、运用条件循环简化多次的反复操作程序
  • 4. 循环与选择的嵌套:选择语句的嵌套、选择嵌套和逻辑运算符综合运用、循环语句中包含跳出循环、循环语句的嵌套、选择语句与循环语句的嵌套的综合运用
  • 5. 画笔:颜色(亮度,饱和度,对比度),图章,擦除图章
  • 6. 广播:广播传递数据,广播并等待,多角色通过广播交互,广播的使用场景
  • 7. 克隆:克隆自己,删除克隆体,克隆体启动的设置
  • 8. 逻辑推理,编程数学:判断条件的逻辑关系

备注:

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

(五)题型配比及分值


Logo

GitCode AI社区是一款由 GitCode 团队打造的智能助手,AI大模型社区、提供国内外头部大模型及数据集服务。

更多推荐