找不同游戏-第15届蓝桥第二次STEMA测评Scratch真题精选

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第157讲。

第15届蓝桥杯第2次STEMA测评已于2023年10月29日落下帷幕,编程题一共有6题,分别如下:

  • 旅游相册

  • 隐身的小鸟

  • 摩天轮

  • 找不同游戏

  • 字母不重复的子串

  • 卡片排列

找不同游戏,本题是2023年10月29日举行的第15届蓝桥STEMA测评Scratch编程初/中级组编程第4题,题目要求编程创作一个找不同游戏。

先来看看题目的要求吧。

一.题目说明

编程实现:

找不同游戏。

具体要求:

1). 运行程序,角色、背景如图所示,变量“倒计时”为5;

图片

2). 按下一次空格键后,白板上显示6行8列的随机文字矩阵(矩阵中随机一个位置的文字为 “大”,其余显示为“太”);

图片

3). 文字矩阵呈现后,“倒计时” 每隔1秒减小1;

4). 当用鼠标点击文字矩阵中的“大”时,显示 “闯关成功”,倒计时停止,程序结束;

图片

5). 当用鼠标点击文字矩阵中任意一个“太”时,显示“闯关失败”,倒计时停止,程序结束;

图片

6). 当“倒计时”为0时,显示“闯关失败”,倒计时停止,程序结束。

评判标准:

  • 6分:满足"具体要求"中的1);

  • 14分:满足"具体要求"中的2);

  • 7分:满足"具体要求"中的3);

  • 14分:满足"具体要求"中的4);

  • 14分:满足"具体要求"中的5);

  • 5分:满足"具体要求"中的6)。

二.思路分析

先来看看题目提供的素材吧。

本题只有1个角色,就是文字角色,如图所示:

图片

文字角色有两个造型,分别是“太”字和“大”字,如下:

图片

背景则有3张图片,分别表示白板、闯关失败和闯关成功,如图:

图片

本题考查的知识点主要包括克隆、变量和事件编程。

根据题目的描述,我们可以将作品的功能拆分成如下3个模块:

  • 克隆文字矩阵

  • 倒计时

  • 点击文字

先从克隆开始,这是本题的关键,也是重难点。这是一个典型的m行n列的克隆场景,常见的做法就是使用两层循环。

超平老师总结了一个“克隆4兄弟”模型,专门实现m行n列的克隆编程。所谓4兄弟是指下面这4个指令:

图片

其中和x坐标相关的两个兄弟指令负责从左至右克隆一行,而y坐标相关的两个兄弟指令负责从上到下克隆多行。

基本模板如下:

图片

本题是6行8列的文字矩阵,将上面m改成6,n改成8,设置好起点的x和y,以及行和列的间隔,就可以了,超级好用。

这里的难点是如何确保其中有且仅有一个”大“字。默认情况下,所有的克隆体都是一样的,如何区分每个克隆体呢?

你可能已经想到了,需要使用私有变量,我们可以给克隆体增加一个编号(ID),然后从1开始编号,直到48为止。

有了编号,就可以随机选取一个编号,将其造型设置为”大“字。

倒计时的功能比较简单,使用变量结合循环和等待语句就可以了,需要注意的是在文字矩阵呈现后才开始倒计时。

点击文字的功能也不难,在角色被点击的时候,直接判断其造型就可以了,如果是”大“字,则切换成”闯关成功“背景,否则切换成”闯关失败“背景。

思路有了,接下来,我们就进入具体的编程实现环节。

三.编程实现

根据上面的思路分析,我们分4步来编写程序:

  • 初始化工作

  • 克隆文字矩阵

  • 倒计时

  • 点击文字

1. 初始化工作

之所以把初始化工作单独拿出来,是要强调它的重要性,很多同学忽略了这一点,经常是在运行之后才想起来要做初始化设置。

其实,对于任何一个Scratch作品,初始化必不可少,也希望大家养成一个良好的编程习惯和规范。

针对本作品,需要初始化的包括背景、造型、隐藏状态和变量等,对应的代码如下:

图片

这里的两个变量都是全局变量,其中”随机数“变量表示要显示”大“字的克隆体的编号。

2. 克隆文字矩阵

当按下空格键时,开始克隆文字矩阵,很多同学不假思索的直接拖出”当按下空格键“指令,就开始编写代码了。

有什么问题吗?

当然有,每按一次空格键,就会重新克隆一次文字矩阵,而且不用点击绿旗,按空格键就开始克隆了,非常的不友好。

实际上,题目有说明,”按下一次空格键后,....“,只不过,有些同学将其直接忽略,有些同学可能没太理解这其中的意思。

所以,不能直接使用”当按下空格键“指令,而应该使用”等待条件“指令,结合”按下空格键“指令。

一旦按下空格键,就需要克隆了,根据前面的思路分析,继续编写代码如下:

图片

重点强调3个问题:

1). 这里的变量"_ID"是私有变量,为了和全局变量进行区分,这里增加了一个下划线,但更重要的是在创建变量的时候,一定要勾选“仅适用于当前角色”,如图:

2). _ID需要设置初始值,然后每克隆一次,就增加1,确保克隆体的编号是1~48,具体设置可以灵活处理,比如初始值为0,先加1,再克隆; 

3). 克隆完毕,再发送”倒计时“的广播消息,注意这个顺序,题目要求显示文字矩阵后才开始倒计时;

对应的,需要将克隆体显示出来,代码如下:

图片

由于默认的造型都是”太“字,所以只需要将编号等于随机数的克隆体的造型设置为”大“字就行。

3. 倒计时

当接收到”倒计时“广播消息后,就可以进行倒计时了,代码如下:

图片

代码比较简单,说明几个细节:

1). 要先使用”等待1秒“指令,这样才符合题目意思,顺序不同,意思不一样,效果也不同;

2). 在倒计时结束后,除了切换成”闯关失败“背景外,还需要使用”停止全部脚本“指令,这样所有的克隆体就会自动删除了。

3). 实际上,这部分代码是可以直接写在克隆文件矩阵后面的,之所以使用广播机制分成两段,是为了让代码结构更清晰,同时也方便讲解。[订正,此处有误,不能使用广播]

4. 点击角色

当点击文字时,只有两种情况,要么是”太“字,要么是”大“字,如果是前者,闯关时候,否则闯关成功。

它们是非此即彼的关系,直接使用双分支条件语句即可,具体代码如下:

图片

同样不要忘了加上”停止全部脚本“指令,确保所有的克隆都会消失。

至此,整个作品就创作好了,赶紧来体验一下,考考你的眼力吧。

四.思考与总结

本题是初/中级组编程部分第4题,分数为60分,积木块数量40个左右,涉及到的知识点主要包括:

  • 循环编程,尤其是嵌套循环;

  • 条件编程,包括双分支和单分支;

  • 造型和背景;

  • 克隆编程;

  • 变量,包括全局编号和私有变量;

  • 事件编程,尤其按键的两种实现方式;

本题难度中等,完成时间15分钟左右,难点是如何实现文字矩阵的克隆,尤其是要确保有且仅有一个”大“字出现在随机位置。

解决本题的关键有两点:

  • 克隆4兄弟模型的灵活运用

  • 私有变量

可以这么说,只要你熟练掌握了这两点,基本上90%的克隆题目你都可以快速搞定,所以一定要理解透彻,多加练习,争取做到像呼吸空气一样轻松自如。

超平老师给你留一个思考题,你能否对这个作品进行二次创作,让游戏玩法更加好玩,比如再增加一个“犬”字,如何?

如果你觉得文章对你有帮助,别忘了点赞和转发,予人玫瑰,手有余香😄

需要素材和源码的,可以移步至“超平的编程课”gzh。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/150294.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JavaWeb-HTML

​ 一、什么是HTML HTML是hypertext markup language(超文本标记语言)的缩写。HTML文件本质上是文本文件,普通的文本文件只能显示字符,而HTML文件可以在浏览器上显示更丰富的信息(如图片等)。 超文本&am…

Go语言fyne开发桌面应用程序-环境安装

环境安装 参考https://developer.fyne.io/started/#prerequisites网站 之前的文章介绍了如何安装GO语言这里不在叙述 msys2 首先安装msys2,https://www.msys2.org/ 开始菜单打开MSYS2 执行 $ pacman -Syu$ pacman -S git mingw-w64-x86_64-toolchain注意&#…

企业大文件传输的四大误区:你还在用传统的FTP和网盘吗?

在当前数字化时代,数据已经成为企业的核心资产,而文件传输则是数据流动的重要方式。企业需要高效、安全、稳定地传输各种类型和规模的文件,无论是内部协作还是外部交付。然而,很多企业在文件传输方面存在一些误区,导致…

Python交易-通过Financial Modeling Prep (FMP)选择行业

介绍 在您的交易旅程中,无论您是在寻找理想的股票、板块还是指标,做出明智的决策对于您的成功至关重要。然而,收集和分析所需的大量数据可能相当艰巨。财务建模准备 (FMP) API的

jenkins+centos7上传发布net6+gitlab

工作中实践了一下jenkins的操作,所以记录一下这次经验 首先安装好jenkins并注册自己的jenkins账号 因为我们的项目代码管理使用的是gitlab,在开始之前先在jenkins上安装gitlab的插件,安装之后应该是要重启jenkins的服务,后续jen…

无线终端掉线问题专题

一、终端连接过程 1、通过beacon或者probe帧发现设备 2、accoc和auth过程 3、EAP过程 4、DHCP过程 5、portal过程 6、终端检测wlan是否可以上网 7、正常接入网络 二、终端无法上网 终端无法上网则说明终端在连接过程中某一个环节除了问题 1、发现AP过程,p…

【论文精读2】R-MVSNet

R-MVSNet【递归多视图立体网络】,论文全名:“Recurrent MVSNet for High-resolution Multi-view Stereo Depth Inference”,CVPR 2019(CCF A) 在MVSNet的基础上做了一些改进,主要解决的问题是代价体正则化(Cost Volume…

Mysql执行报错:[Err] 1292 - Truncated incorrect DOUBLE value:***

MySQL执行语句抛出异常: 上面错误提示概是下面几种情况: 数据类型不匹配:在进行数值比较或运算时,数据类型可能不匹配。例如,将一个字符串值与一个 DOUBLE 类型的列进行比较或运算,或者将一个非数字字符串…

Android设计模式--策略模式

每天都要完成一个小目标 一,定义 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使他们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化 什么意思呢?在我们平时的开发中,难免会遇到这种情况&…

【eNSP安装与使用】华为eNSP网络设备模拟器从安装到使用详细步骤(亲测有效,附安装包下载)

目录 写在前面涉及知识一、安装那些事1.1前期安装包准备(基于windows10环境测试)1.2 安装WinPcap1.3 安装Wireshark1.4 安装VirtualBox1.5 安装eNSP 二、使用那些事2.1 安装问题解决(启动设备ar1失败 错误代码41)2.2 测试使用 三、…

干货分享---- 金融贷款电销获客的方法、渠道

电话营销的现状是,它过去使用电话资源在常规交易平台上正常工作,但进入时,对方总是挂断电话,甚至被他人标记为骚扰,这使工作变得困难。事实上,电话营销交易量飙升的关键很简单,那就是营销技巧和…

AGI+机器人行业:AGI 赋能人形机器人,具身智能时代有望加速到来

目录 1AGI的关键拼图:起于大模型,终于具身智能 .2 具身智能助力AGI走进现实 3人形机器人是AGI最佳载体,业界研究进展加速 2.2 OpenAI升级迭代GPT,推动机器人“大脑”升级 2.3 Meta与CMU联手打造RoboAgent,用更少的…

【开源】基于JAVA的生活废品回收系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容三、界面展示3.1 登录注册3.2 资源类型&资源品类模块3.3 回收机构模块3.4 资源求购/出售/交易单模块3.5 客服咨询模块 四、免责说明 一、摘要 1.1 项目介绍 生活废品回收系统是可持续发展的解决方案,旨在鼓…

网上赚钱有哪些项目可以长期做?盘点六个靠谱的副业项目

很多想扩宽收入来源,或者准备从事网络副业项目的人来说,在网上找到一个靠谱的项目也并非易事。现在的网络时代,网上赚钱成了一个备受关注的话题。但是现在却到处充斥着金钱和骗局的诱惑,不谨慎的朋友很容易被骗踩坑。 那么&#x…

一文搞懂Transformer

近期Transformer系列模型的出现,增加了CV领域的多样性。但是Transformer这一不同领域的模型对学习者来说需要一个细致的学习过程.下面就是本菜鸟总结学习路线。 Transformer是基于attention机制。而attention机制又在Encoder、Decode中。本篇博客将从Attention->…

软件测试如何定位判断是前端的bug还是后端bug

📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢交流讨论:欢迎加入我们一起学习!📢资源分享:耗时200小时精选的「软件测试」资…

【漏洞复现】浙大恩特客户资源管理系统 fileupload.jsp 任意文件上传漏洞

文章目录 前言声明一、系统概述二、漏洞描述三、资产探测四、漏洞复现五、修复建议 前言 杭州恩软信息技术有限公司客户资源管理系统fileupload.jsp接口存在安全漏洞,攻击者可通过上传恶意脚本应用,获取服务器控制权限。 声明 请勿利用文章内的相关技术…

7个免费的优质图标素材网站,设计师必备!

对于交互设计师和产品经理来说,一套漂亮易用的图标可以算是提高效率的法宝,自己导出一套标准化的图标是一个巨大的工程。如何找到一个既美观又实用又能快速重用的图标?别慌,今天我们整理了7个价值高又好用的图标素材网站&#xff…

【unity插件】Shader实现UGUI的特效——UIEffect为 Unity UI 提供视觉效果组件

文章目录 前言地址描述Demo 演示Installation 安装如何玩演示用法使用示例完结 前言 一般的shader无法直接使用在UI上,需要在shader中定义特定的面板参数,今天就来推荐github上大佬做的一套开源的一系列UGUI,Shader实现的特效——UIEffect 为…

代码随想录 Day46 动态规划14 LeetCode T392 判断子序列 T115 不同的子序列

LeetCode T392 判断子序列 题目链接:392. 判断子序列 - 力扣(LeetCode) 题目思路: 本题有两种思路,第一个思路是使用双指针,第二个思路是使用动态规划,结尾笔者会附上两种方法的代码. 1.双指针 首先我们谈双指针的思路,就是让两个指针分别指向s和t字符…