切换子弹

您所在的位置:网站首页 子弹杯是什么杯 切换子弹

切换子弹

2024-07-17 16:56:46| 来源: 网络整理| 查看: 265

本文转自于”超平的编程课“公众号,更多教程,可移步至公众号。

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

第12届蓝桥杯青少年组国赛于2021年5月29日举行,本次赛事仍然采取了在线考试。Scratch分为初级组和中级组,其中初级组面向7~10岁孩子,中级组面向11~14岁孩子。

Scratch切换子弹,本题是第12届蓝桥杯Scratch国赛真题编程部分第4题,初级组和中级组都有此题。题目要求考生编程实现切换子弹效果,按1发射火焰弹,按2发射火焰散弹,本题难度系数为3,分值为80分。

先来看看题目的详细说明吧。

一.题目说明

编程实现:切换子弹

具体要求:

1). 点击绿旗,呈现对应的角色与背景;

2). 按下数字键1,发射1类型子弹-火焰弹;

3). 按下数字键2,发射2类型子弹-火焰散弹;

4). 再次按下数字键1,发射1类型子弹-火焰弹;

5). 子弹为持续发射状态,数字键1与数字键2可以持续切换发射子弹的类型。

评判标准:

5分:满足要求1;

25分:满足要求2

25分:满足要求3;

10分:满足要求4;

15分:满足要求5。

二.思路分析

本题逻辑比较简单,当按下数字键1时,沿着正前方不停地发射火焰弹,当按下数字键2时,沿着5个方向同时发射火焰散弹。

本题只有两个角色,其中子弹角色是重点,几乎所有的代码都是在子弹角色中来编写的。

按键处理,我们可以使用事件模块中的“当按下xx键”指令,也可以使用控制模块中的“如果...那么”指令结合侦测模块中的“按下xx键”指令。不停的发射子弹,这需要使用Scratch中的克隆技术。

本题的难点在于,如何沿着5个方向同时发射火焰散弹,这会用到Scratch克隆中的一个小技巧,稍后详细为你介绍。

三.编程实现

接下来,我们就分3步来编写程序:

实现按键处理

发射1类型子弹-火焰弹

发射2类型子弹-火焰散弹

1. 实现按键处理

针对按键处理,根据前面的介绍,有两种方式实现,不过我还是比较推荐第二种方式,也就是使用“如果...那么”指令结合“按下xx键”指令,原因很简单,使用这种方式,只有在点击绿旗之后才能启动程序,如果使用第一种方式,不用点击绿旗,直接按键盘就可以启动程序。

切换到子弹角色,编写代码如下:

注意:很多刚开始学编程的孩子,经常会漏掉这里的”重复执行“指令,导致没有任何效果,切记,”如果...那么“指令只能执行一次,通常需要和”重复执行“指令配合使用。

接下来就需要分别处理发射两种不同的子弹了。

2. 发射1类型子弹-火焰弹

1类型子弹始终沿着90度方向发射,因此,只需要将子弹角色设置为90度,不停的克隆即可,只是要控制一下克隆子弹的频率,通常的做法就是等待一下,比如0.05秒,这部分的代码如下:

一旦生成了子弹克隆体,就可以让它不停地向前移动,直到碰到舞台边缘消失,代码如下:

这样一来,1类型子弹就可以成功发射出去了。

3. 发射2类型子弹-火焰散弹

这是本题的重点,也是难点,沿着5个不同的方向发射子弹,意味着我们需要在按下数字键2的时候,一次性克隆5个子弹,并设置不同的方向。看起来挺简单的,大部分学生都会这么写:

从逻辑上来讲,这么写没有任何问题,但是效果看起来却有点奇怪,如下图所示:

眼尖的你,估计已经发现了,这里的5颗子弹并不是同时发射出去的,明显的有先后顺序。

尽管这里没有”等待1秒“指令,但是代码执行还是要占用时间的,所以这里的5颗子弹还是有先后顺序的,也就导致出现了上图所示的效果。

(O_O)? 能否让5颗子弹同时克隆出来呢?

当然能,今天超平老师就教你一招,借助自制积木就可以,将克隆5颗子弹的程序定义成自制积木,如图所示:

同时确保在定义自制积木的时候,勾选左下角的”运行时不刷新屏幕“,如图:

然后在程序中使用自制积木来替换刚才的代码,如图:

那么,你可能要问了,这里的”运行时不刷新屏幕“是个啥意思呢?

其实,更确切地说,“运行时不刷新屏幕”,是不刷新舞台。其作用是,使得自制积木中的代码在执行时省去舞台刷新的步骤,并在整个自制积木执行完毕后再刷新屏幕。

由于刷新舞台会消耗计算机资源,需要一定的时间,因此使用“运行时不刷新屏幕”功能可以使特定的代码加快执行效率,缩短运行时间,但是用户无法通过舞台看到程序运行过程中的效果变化,可以简单的理解这部分的代码是同时执行的。

除了本例中的确保多个子弹同时克隆的效果,还可以用于Scratch画笔瞬间绘制好图形,以及角色碰撞时控制其行为的物理引擎等。

总之,“运行时不刷新屏幕”功能为在Scratch中实现更多更丰富的效果提供了可能,是一个比较强大的功能。

至此,发射2类型子弹的效果也完成了。

四.总结与思考

本题相对较为简单,重点考察了下面4个知识点:

按键处理程序,建议使用”如果...那么“和”按下xx键“组合方式;

克隆的使用,重点是克隆3指令的含义和用法;

自制积木的使用,分为定义和调用两个阶段;

”运行时不刷新屏幕“设置项的意义和妙用;

最后需要强调一下,不管是发射1类型子弹还是2类型子弹,其克隆体运动的代码都是一样的,都是通过重复执行”移到10步“来实现的。有的同学可能在想,使用”将x坐标增加10“不是也可以吗?

这个还真不行,使用”将x坐标增加10“指令除了x坐标发生变化之外,还有一个隐含信息,那就是它始终面向右方,也就是90度。这就导致,所有的子弹只会沿着90度方向发射出去,而这里的2类型子弹,子弹是沿着5个不同方向发射出去的。

实际上,我们可以这么理解,”将x坐标增加10“只是”面向方向“ + ”移动10步“组合的一个特例,如果x增加的是正数,那么方向就是90度,如果x增加的是负数,那么方向就是-90度。

关于角色的运动,在Scratch中有3种实现方式,我们需要根据具体的问题,具体分析,然后采取最优的方案,这也是计算思维的实际运用和体现。

如果你觉得文章对你有所帮助,别忘了点赞,你的鼓励是我坚持继续写下去的最大动力,Thanks♪(・ω・)ノ。

需要素材和源码的,可以联系作者,或者移步至”超平的编程课“公众号。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


    图片新闻

    实验室药品柜的特性有哪些
    实验室药品柜是实验室家具的重要组成部分之一,主要
    小学科学实验中有哪些教学
    计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
    实验室各种仪器原理动图讲
    1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
    高中化学常见仪器及实验装
    1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
    微生物操作主要设备和器具
    今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
    浅谈通风柜使用基本常识
     众所周知,通风柜功能中最主要的就是排气功能。在

    专题文章

      CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭