[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第75讲。

蓝桥杯选拔赛每一届都要举行4~5次,和省赛、国赛相比,题目要简单不少,再加上篇幅有限,因此我精挑细选了一部分题目进行解读。

第13届蓝桥杯青少年组第2次选拔赛于2021年10月23日举行,形式为线上考试。Scratch分为初级组和中级组,其中初级组面向7~10岁孩子,中级组面向11~14岁孩子。

嫦娥奔月,本题是2021年10月23日举行的第13届蓝桥杯Scratch选拔赛真题编程第3题,初级组和中级组都有此题,题目要求编程模拟嫦娥奔月的效果。

先来看看题目的要求吧。

一.题目说明

背景信息:

中秋是中国民间的传统节日,中秋以月之圆寓意人之团圆,为寄托思念故乡,思念亲人之情,祈盼丰收、幸福,成为丰富多彩、弥足珍贵的文化遗产。

编程实现:

嫦娥奔月。

具体要求:

1). 运行程序,等待1秒出现嫦娥角色;

2). 点击嫦娥,嫦娥询问“请输入我飞行的时间5-10”;

3). 输入数字后嫦娥开始向月亮移动,飞行过程中嫦娥越来越小;

4). 左上角显示输入的数值后开始倒计时(5代表5秒,6代表6秒以此类推);

5). 倒计时为0停止计数,嫦娥在月亮上停止移动;

6). 等待1秒,出现节日祝福。

评分标准:

  • 3分:满足要求1);

  • 4分:满足要求2);

  • 8分:满足要求3);

  • 4分:满足要求4);

  • 3分:满足要求5);

  • 3分:满足要求6);

二.思路分析

本题包含两个角色,分别是嫦娥和祝福,如图所示:

需要说明一下,这里的嫦娥在出现的时候,有渐显效果,在Scratch编程中,我们可以通过逐渐改变虚像特效来实现。

当玩家输入时间后,嫦娥就开始奔向月亮,在这个过程中,要完成如下三个任务:

  • 嫦娥角色的运动

  • 倒计时

  • 嫦娥角色逐渐变小

三者是并行关系,即同时进行,由于运动时间已经确定下来了,所以这里肯定要使用“在1秒内移动x,y”指令,但是这个指令是独占模式(单线程)的,也就是在执行这个指令时,无法继续执行后续指令。因此,我们需要使用广播机制,给自己发送一个广播消息,将程序执行流程一分为二,从而实现多线程。

还有一点,嫦娥的移动时间是变化的,可能是5秒,也可能是10秒,如何确保嫦娥停下来时的大小是一致的,这就需要让嫦娥缩小的速度跟随移动时间进行变化,时间越短,缩小速度越小,时间越长,缩小速度也越大。

三.编程实现

根据题目描述和思路分析,我们可以分4步来编写程序:

  • 嫦娥逐渐出现

  • 嫦娥飞到月亮上

  • 嫦娥逐渐变小

  • 倒计时

1. 嫦娥逐渐出现

绿旗点击时,嫦娥位于舞台左下角,并且是隐藏的,1秒之后慢慢显示出来,在Scratch中,可以通过虚像来设置角色的透明度,默认虚像值为0,表示不透明,当虚像值为100时,角色完全透明,就看不见了。

所以,我们可以将虚像值设为100,然后逐渐减小到0,在嫦娥角色中编写代码如下:

注意,题目给出的演示视频中,绿旗点击时倒计时显示的是空,所以这里将倒计时的初始值设置为空,而不是0。

2. 嫦娥飞到月亮上

当玩家使用鼠标点击嫦娥时,会弹出一个对话框,询问飞行的时间,对于角色的点击,通常直接使用“当角色被点击指令”,但这里的点击是在嫦娥完全显示后才进行的,更好的办法是使用侦测指令,同时判断角色是否碰到鼠标指令和按下鼠标,在嫦娥角色的的代码块中,增加代码如下:

当玩家输入飞行时间后,将变量“倒计时”设为回答,然后发送了一个广播消息,接着让嫦娥角色在指定时间内滑行到月亮上。

3. 嫦娥逐渐变小

嫦娥角色接收到自己发送的“开始飞行”广播后,逐渐开始变小,根据前面的思路分析,我们添加一个变量“缩小速度”,它和“倒计时”变量成反比关系,然后重复减小角色直到倒计时为0,对应的代码如下:

这里的缩小速度设为了“ -7 / 倒计时”,是经过多次测试得到的,包括“等待0.04秒”指令,你可以设置为其它的值。之所以是负数,是因为角色要逐渐变小,同时要注意在初始化中需要将角色大小设为100。

4. 倒计时

嫦娥角色在接收到“开始飞行”广播后,还需要显示倒计时效果,每隔1秒就减去1,当倒计时减到0,在嫦娥角色中继续编写代码如下:

倒计时减到0,再等1秒,出现节日祝福,因此在这里发送了一个“广播祝福”的广播消息,对应的,祝福角色在接收到广播后,将自己显示出来,切换到祝福角色,编写代码如下:

至此,整个作品就创作完成了。

四.总结与思考

本题难度系数为4,积木块数量在43个左右,涉及到的知识点主要包括:

  • 外观编程,包括大小、显示隐藏和虚像特效,重点是渐显效果;

  • Scratch问答,包括询问并等待和回答;

  • 事件广播机制,重点是通过广播实现多线程编程;

  • 使用侦测指令实现角色点击;

  • “等待条件”指令的灵活运用。

题目难度中等,重点有两个,一是多线程编程,要确保角色在滑行过程中逐渐减小角色,解决方案就是使用事件广播机制,给自己发送广播消息,将程序执行流程一分为二,同时执行。

二是如何确定角色缩小的速度,确保不管时间长短,都可以将角色缩小到相同大小,这就需要寻找两个变量之间的关系和规律(定性),并通过数学计算来确定其缩小速度(定量),这其实就是科学中经常提到的定性和定量的分析方法。

嫦娥奔月-第13届蓝桥杯Scratch选拔赛真题精选相关推荐

  1. 闰年计算-第13届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第76讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

  2. 红绿灯记忆游戏-第13届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第77讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

  3. 潜艇游戏-第13届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第71讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

  4. 豌豆射手-第13届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第72讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

  5. 病毒消灭战-第13届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第74讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

  6. 拼图游戏-第13届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第73讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

  7. 绘制花朵-第13届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第78讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

  8. 第13届蓝桥杯Scratch选拔赛真题集锦

    第13届蓝桥杯Scratch选拔赛真题集锦 编程题 第 1 题问答题 跳舞机游戏 题目说明 编程实现 跳舞机游戏. 具体要求: 1).点击绿旗,舞台左上角显示得分0代表玩家分数,在得分右侧倒计时10代 ...

  9. 植树节种树-第12届蓝桥杯Scratch选拔赛真题精选

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第87讲. 蓝桥杯选拔赛每一届都要举行4~5次,和省赛.国赛相比,题目要简单不少,再加上篇幅 ...

最新文章

  1. html 页面宽度和背景颜色,CSS:设置背景颜色为窗口宽度的50%
  2. CLR via C#深解笔记二 - 类型设计
  3. 汉语转拼音pinyin4j
  4. tomcat 软连接
  5. 【数据平台】sklearn库特征工程之数据预处理
  6. UA MATH567 高维统计IV Lipschitz组合8 随机投影与John-Lindenstrauss引理
  7. 基于FAST-RCNN深度学习的目标识别算法的MATLAB仿真
  8. HTML---百度新闻轮播图--定位练习
  9. Python实现的导弹跟踪算法,燃!
  10. java中文乱码问题的原因是什么?怎么解决中文乱码问题?
  11. 机械厂html5手机模板,营销型机械消费设备企业通用织梦模板(带html5手机端) v1.0...
  12. 2020-09-01
  13. TX2刷机flashOS finished后,卡在determining IP address解决方案
  14. require() 源码解读
  15. 最简单的java代码【java基本语法】
  16. 阿里月饼事件被辞程序员冤吗
  17. 知乎热议:35岁,你要逃离北上广?
  18. ios审核要注意的地方(转)
  19. php 输出七芒星,SongNet:硬格式控制下的文本生成
  20. 8种CSS3按钮动画特效【附源码】

热门文章

  1. CAE 分析中 隐式和显式时间积分算法的python程序实现
  2. IT视频教程百度云盘链接分享
  3. Qno侠诺中小型企业ERP远程接入方案(转)
  4. 信管1132班32 章泳涛 数据结构课程设计
  5. PSINS开源代码初体验——航迹仿真与组合导航
  6. CyberGhost使用、下载、注册【完整教程】
  7. 鲍姆-韦尔奇算法求解HMM参数
  8. charles 抓包显示unknown
  9. 图像分析之曲率滤波(困惑篇)
  10. 加工中心主传动系统的机械结构设计