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

2024-03-21 07:20

本文主要是介绍找不同游戏-第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。

这篇关于找不同游戏-第15届蓝桥第二次STEMA测评Scratch真题精选的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/832064

相关文章

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

2. c#从不同cs的文件调用函数

1.文件目录如下: 2. Program.cs文件的主函数如下 using System;using System.Collections.Generic;using System.Linq;using System.Threading.Tasks;using System.Windows.Forms;namespace datasAnalysis{internal static

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

高效录音转文字:2024年四大工具精选!

在快节奏的工作生活中,能够快速将录音转换成文字是一项非常实用的能力。特别是在需要记录会议纪要、讲座内容或者是采访素材的时候,一款优秀的在线录音转文字工具能派上大用场。以下推荐几个好用的录音转文字工具! 365在线转文字 直达链接:https://www.pdf365.cn/ 365在线转文字是一款提供在线录音转文字服务的工具,它以其高效、便捷的特点受到用户的青睐。用户无需下载安装任何软件,只

uva 10061 How many zero's and how many digits ?(不同进制阶乘末尾几个0)+poj 1401

题意是求在base进制下的 n!的结果有几位数,末尾有几个0。 想起刚开始的时候做的一道10进制下的n阶乘末尾有几个零,以及之前有做过的一道n阶乘的位数。 当时都是在10进制下的。 10进制下的做法是: 1. n阶位数:直接 lg(n!)就是得数的位数。 2. n阶末尾0的个数:由于2 * 5 将会在得数中以0的形式存在,所以计算2或者计算5,由于因子中出现5必然出现2,所以直接一

国产游戏崛起:技术革新与文化自信的双重推动

近年来,国产游戏行业发展迅猛,技术水平和作品质量均得到了显著提升。特别是以《黑神话:悟空》为代表的一系列优秀作品,成功打破了过去中国游戏市场以手游和网游为主的局限,向全球玩家展示了中国在单机游戏领域的实力与潜力。随着中国开发者在画面渲染、物理引擎、AI 技术和服务器架构等方面取得了显著进展,国产游戏正逐步赢得国际市场的认可。然而,面对全球游戏行业的激烈竞争,国产游戏技术依然面临诸多挑战,未来的

速了解MySQL 数据库不同存储引擎

快速了解MySQL 数据库不同存储引擎 MySQL 提供了多种存储引擎,每种存储引擎都有其特定的特性和适用场景。了解这些存储引擎的特性,有助于在设计数据库时做出合理的选择。以下是 MySQL 中几种常用存储引擎的详细介绍。 1. InnoDB 特点: 事务支持:InnoDB 是一个支持 ACID(原子性、一致性、隔离性、持久性)事务的存储引擎。行级锁:使用行级锁来提高并发性,减少锁竞争

MyBatis 切换不同的类型数据库方案

下属案例例当前结合SpringBoot 配置进行讲解。 背景: 实现一个工程里面在部署阶段支持切换不同类型数据库支持。 方案一 数据源配置 关键代码(是什么数据库,该怎么配就怎么配) spring:datasource:name: test# 使用druid数据源type: com.alibaba.druid.pool.DruidDataSource# @需要修改 数据库连接及驱动u

火柴游戏java版

代码 /*** 火柴游戏* <p>* <li>有24根火柴</li>* <li>组成 A + B = C 等式</li>* <li>总共有多少种适合方式?</li>* <br>* <h>分析:</h>* <li>除去"+"、"="四根,最多可用火柴根数20根。</li>* <li>全部用两根组合成"1",最大数值为1111。使用枚举法,A和B范围在0~1111,C为A+B。判断</li>** @