占领矩阵-第15届蓝桥省赛Scratch中级组真题第5题

news2024/9/27 20:59:53

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

如果想持续关注Scratch蓝桥真题解读,可以点击《Scratch蓝桥杯历年真题》并订阅合集,查阅教程更方便。

第15届蓝桥杯省赛已于2024年8月24日落下帷幕,中级组编程题一共有6题,分别如下:

  • 抓不住的蜜蜂

  • 穿越病毒区

  • 画台扇

  • 收集松果

  • 占领矩阵

  • 截取递增数

占领矩阵,本题是2024年8月24日举行的第15届蓝桥省赛Scratch中级组编程第5题,题目要求创作一个占领矩阵作品。点击绿旗,瞬间出现一个5行5列的白色实心圆矩阵,在展示321倒计时效果后,造型1瞬间占领矩阵,1秒后,造型2从左下到右上逐渐占领矩阵,最后造型1从右上到左下逐渐占领矩阵。

先来看看题目的要求吧。

一.题目说明

编程实现:

占领矩阵。

具体要求:

1). 点击绿旗,瞬间出现一个5行5列的白色实心圆组成的矩阵,如图所示;

图片

2). 然后,在矩阵中依次显示数字3、2、1,每个数字显示时长为 0.5 秒,数字的显示效果如图所示;

图片

3). 接下来,

图片

 瞬间占领整个矩阵,如图所示;

图片

4). 1秒后,

图片

在2秒内从左下角开始向右上角按如下规律逐渐占领整个矩阵;(参考视频)

图片

5). 最后,

图片

在2秒内从右上角开始向左下角按如下规律逐渐占领整个矩阵,而后游戏结束。(参考视频)

图片

评判标准:

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

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

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

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

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

二.思路分析

本题只有一个角色,就是圆圈,如图所示:

图片

角色一共有4个造型,如图:

图片

这是典型的克隆题目,考查的知识点主要包括克隆技巧、私有变量、自制积木、事件广播和列表等。

如果只考虑题目的要求1)、2)、3),那就比较简单了,直接使用”克隆4兄弟“和”自私的ID“模型。

题目的难点就在于要求4)和要求5),如何按照对角线(包括从左下到右上和从右上到左下)遍历矩阵,如图所示:

图片

对于这个问题,一般有如下两种思路:

  • 根据克隆体所处行和列,寻找规律,进行斜线遍历;

  • 直接按照对角线克隆圆圈;

相对来说,在Scratch编程中,使用第二种方式更为简单。

我们先来看两张图片吧,第一张图如下:

图片

第二张图如下:

图片

熟不熟悉,这不就是金字塔排列么?

所以,我们可以借鉴金字塔的克隆技巧,对”克隆4兄弟“模型稍作一点修改,就可以完成对角线克隆了。

为了方便描述,可以对每一条对角线进行编号,先看左下方的5条对角线,如图:

图片

首先,从左下到右上,克隆体的数量依次为1、2、3、4、5,这个可以使用变量来控制克隆体的个数。

其次,每条对角线的起始x坐标都是一样的,大概是-95,y坐标相隔一个圆圈的距离,大概是50。

第三,对于每条对角线而言,下一个克隆体(如果有的话)的位置都是在上一个克隆体的位置上右移50、下移50。

这样一来,我们就可以使用使用”克隆4兄弟“模型结合变量来克隆这5条对角线了。

同理,对于右上角的对角线,可以画图如下:

图片

分析方法基本相同,克隆体的数量依次为5、4、3、2、1,使用变量来控制其数量即可。

这一次,每条对角线的起始y坐标都是一样的,大概是95,而x坐标相隔一个圆圈的距离50。

对于每条对角线而言,下一个克隆体(如果有的话)的位置也是在上一个克隆体的位置上右移50、下移50。

因此,我们可以按照这种方式,从左下到右上依次克隆9条对角线,然后将每条对角线上的克隆体作为一组进行编号。

同时,在克隆圆圈的时候,对每个克隆体进行编号,并将处在数字3、2、1位置上的编号分别存入三个列表中,这样就可以轻松地显示倒计时效果。

关键问题解决了,接下来,我们就进入程序实现环节。

三.编程实现

根据上面的思路分析,我们分5步来完成作品:

  • 克隆矩阵

  • 列表初始化

  • 倒计时

  • 从下到上占领矩阵

  • 从上到下占领矩阵

1. 克隆矩阵

根据前面的思路分析,我们分两步来克隆矩阵,先克隆左下角的三角形排列,定义自制积木如下:

图片

代码不少,说明两点:

1). 变量”_ID“和”_层“要定义为私有变量,注意它们的初始值和更新位置;

2). 这里使用”起点y“变量来指定对角线的起始y坐标,可以更轻松地控制y坐标的变化;

同理,再定义一个自制积木由于克隆右上方的三角形排列,代码如下:

图片

代码基本差不多,强调3点:

1). 一共有9条对角线,前面已经克隆了5条,因此这里只需要克隆4条对角线;

2). 对于右上对角线排列,起点x坐标是变化的,因此使用了变量”起点x“,并设置好其初始值;

3). 注意私有变量”_层“和”_ID“更新的位置;

2. 列表初始化

这一步非常简单,将处在数字3、2、1位置上的克隆体的ID分别保存到3个列表中,先创建好”数字3“、”数字2“和”数字1“3个列表。

分别定义自制积木,如下:

图片

这里有一个细节,我们怎么快速确定这些ID呢?

超平老师悄悄的告诉你一个小技巧,可以先将克隆体显示出来,并说出自己的ID,代码如下:

图片

执行代码,效果如下:

图片

有了这些编号,就可以轻松地找到每个数字需要的ID了。

3. 倒计时

有了前面两步的准备,显示倒计时就比较简单了,先在绿旗指令下编写代码如下:

图片

对应的,对克隆体编写代码如下:

图片

代码比较简单,这里就不再解释了。

4. 从下到上占领矩阵

私有变量“_层”表示的是每个克隆体所在的对角线,如图:

图片

因此,我们可以定义一个变量“当前层”,表示每次控制的层,依次改变每条对角线上的克隆体。

在绿旗代码块中继续编写代码如下:

图片

对应的,编写接收广播的代码如下:

图片

代码比较简单,强调3点:

1). 显示倒计时花了1.5秒,还需要等待1秒,因此一共需要等待2.5秒;

2). 发送广播消息的代码一定要写在绿旗指令下,绿旗指令控制的是本体,只需要本体发送一个广播消息即可;

3). 两次广播之间稍微等待一下,确保在2秒之内能占领矩阵,至于这里的广播方式,使用哪一种都可以;

5. 从上到下占领矩阵

在上面的代码块中继续编写代码如下:

图片

同理,编写接收广播的代码如下:

图片

至此,整个作品就创作好了,是时候来测试自己的作品啦。

四.总结与思考

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

  • 克隆技巧;

  • 自制积木;

  • 私有变量;

  • 事件广播机制;

  • 列表;

作为本次中级组省赛的第5题,难度较大,完成时间20分钟左右,本题的难点是如何整体控制每条对角线上的克隆体。

实际上,关于类似的场景在之前的真题中也出现过,比如第13届国赛的点亮LED屏幕,如图所示:

图片

具体详情可以参考《LED屏幕-第13届蓝桥杯Scratch国赛真题第7题》这篇教程。

在Scratch中,类似的问题,通用的解决方案就是熟练掌握各种不同排列的克隆技巧,比如标准的矩形、三角形、金字塔、圆形、螺旋形等。具体来说,就是灵活运用“克隆4兄弟”模型,稍微复杂一点的需要结合变量和列表等数据结构。

退一步讲,在比赛的时候,如果实在无法实现对角线克隆,你也可以按照常规的方式完成5行5列的矩阵克隆,确保满足题目的前3个要求,这样可以快速拿到36分,将近一半的分数,也还是蛮划算的吧。

超平老师给你留一道思考题,如果不使用上面介绍对角线克隆技巧,能否找到同一条对角线上的克隆体呢?

你还有什么好的方法吗,非常欢迎您和超平老师交流分享。

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

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

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【图像处理】多幅不同焦距的同一个物体的平面图象,合成一幅具有立体效果的单幅图像原理(一)

合成一幅具有立体效果的单幅图像,通常是利用多个不同焦距的同一物体的平面图像,通过图像处理技术实现的。以下是该过程的基本原理: 1. 立体视觉原理 人眼的立体视觉是通过双眼观察物体的不同视角而获得的。两只眼睛的位置不同,使…

【学习笔记】MIPI

MIPI介绍 MIPI是由ARM、Nokia、ST、IT等公司成立的一个联盟,旨在把手机内部的接口如存储接口,显示接口,射频/基带接口等标准化,减少兼容性问题并简化设计。 MIPI联盟通过不同的工作组,分别定义一系列手机内部的接口标…

猜拳数据集-石头-剪刀-布数据集

“石头-剪刀-布”计算机视觉项目是一个利用摄像头捕捉手势并识别出手势是石头、剪刀还是布的项目。这类项目通常用于学习和展示计算机视觉技术,如图像处理、特征提取以及机器学习或深度学习模型的应用。 数据介绍 rock-paper-scissors Computer Vision Project数…

基于状态机的流程编排架构设计

背景 xx产品侧规划了全新的能力升级, 主要思路为:改变之前通过xx等手工生成xx的方式,通过标准化流程尽可能的减少人工介入,提升产出效率。xx入库、xx生成链路存在链路长、链路不稳定问题,由于目前缺乏比较好的监控、检…

一文多图,彻底弄懂LSM-Tree

一文弄懂LSM-Tree LSM-Tree是什么? LSM-Tree(Log Structured Merge Tree)是一种数据结构,它被设计用于处理大量写入操作的场景,常见于许多NoSQL数据库中,如BigTable、Cassandra、RocksDB和LevelDB等。 L…

废品回收小程序:回收更加便捷!

在日常生活中,废品回收已经成为了一种常见事,随着电商的快速发展,居民难免会产生大量的废纸盒等可回收物,以及在日常生活中产生的其他回收物, 目前,废品回收市场也发生了改革,传统的“叫卖”方…

MySQL高阶1990-统计实验的数量

目录 题目 准备数据 分析数据 总结 题目 写一个 SQL 查询语句,以报告在给定三个实验平台中每种实验完成的次数。请注意,每一对(实验平台、实验名称)都应包含在输出中,包括平台上实验次数是零的。 结果可以以任意…

C++之STL—常用查找算法

- find //查找元素 - find_if //按条件查找元素 - adjacent_find //查找相邻重复元素 - binary_search //二分查找法 - count //统计元素个数 - count_if //按条件统计元素个数 find (iterator begin, …

衡石分析平台系统管理手册-功能配置之全局 JS 设置

全局 JS 设置​ 衡石系统提供了全局 JS 设置功能,用户可以通过自定义 JS 代码实现系统的个性化需求,如使用第三方统计工具对系统平台的 PV 、UV 进行监测。 使用场景​ 场景1:增加百度统计​ 下图示例中使用 js 代码引用了百度网站统计功…

SUP-NeRF-ECCV2024: 单目3D对象重建的新突破

2024-09-25,由Bosch Research North America和Michigan State University联合发布的SUP-NeRF,是一个基于单目图像进行3D对象重建的新型方法。一个无缝集成姿态估计和物体重建的统一网格。 ECCV:欧洲计算机视觉会议的缩写,它是计算…

免费好用!AI声音克隆神器,超级简单,10秒就能克隆任何声音!(附保姆级教程)

今天下午还有读者问: 有没有能克隆声音的 AI 工具? 其实剪映很早就上了克隆声音的功能。 只需要按要求朗读例句,或者上传本地的音视频文件,就可以克隆声音了。 操作非常简单,效果也不错,可以试试。 除了…

数据库软题4-关系代数转SQL语言

题1 因为是笛卡尔积 <ABCD CDE> <1234 567> 笛卡尔积 RxS FROM R&#xff0c;S题2 题3 题4 题5

day-62 每种字符至少取 K 个

思路 滑动窗口&#xff1a;改变思路&#xff0c;从左右两边取字符&#xff0c;是a b c三个字符至少被取k次&#xff0c;那么意味着如果我们知道字符串中a b c的出现个数&#xff0c;那么可以知道取走后剩下子串a b c的个数&#xff0c;问题转化为了求最长子串 解题过程 如果a …

java项目开发团队分配管理软件

需求&#xff1a; 该软件实现以下功能&#xff1a; 软件启动时&#xff0c;首先进入登录界面进行注册和登录功能。 当登陆成功后&#xff0c;进入菜单&#xff0c;首先就可以对开发人员账户和密码进行修改。 然后可以对开发人员进行增删改操作 人员添加成功后&#xff0c;根据菜…

传奇GEE引擎版本如何封挂?GEE引擎设置简单的封挂脚本教程

网关参数设置gee引擎封挂脚本 1、打开M2-选项-参数设置-游戏速度 把所有的设置限速关闭 2、打开M2-选项-客户端设置-内挂控制-速度控制&#xff1a;移动速度 攻击速度 魔法速度 设置好参数&#xff0c;一旦设置不要修改 否则封挂网关参数需重新设置 打开M2-选项-功能设置-…

【C++算法】栈

删除字符中的所有相邻重复项 题目链接 删除字符中的所有相邻重复项https://leetcode.cn/problems/remove-all-adjacent-duplicates-in-string/description/ 算法原理 代码展示 class Solution { public:string removeDuplicates(string s) {string ret;for(int i 0; i &l…

C# 的枚举(Enum)应用说明

一.Enum的定义&#xff1a; 枚举是一组命名整型的常量。枚举类型是使用 enum 关键字声明的&#xff0c;它是值类型。枚举包含自己的值&#xff0c;且不能继承或传递继承。 二.声明 enum 变量&#xff1a; 声明枚举的一般语法&#xff1a; enum <enum_name> { enumerati…

Harbor使用

文章目录 1、上传镜像1.1、在Harbor上创建一个项目1.2、docker添加安全访问权限1.3、推送docker镜像到该项目中1.3.1、登录到Harbor1.3.2、给镜像重新打一个标签1.3.3、推送镜像到Harbor中 2、拉取镜像2.1、先删掉原来的镜像2.2、执行拉取命令 1、上传镜像 需求&#xff1a;将…

[Python]什么是K-Means均值聚类算法?

K-Means均值聚类分析是一种无监督学习算法&#xff0c;用于将数据集分成k个簇&#xff08;cluster&#xff09;&#xff0c;其中每个簇的成员在某种意义上是相似的。算法的目标是找到质心&#xff08;centroid&#xff09;&#xff0c;使得每个点到其最近质心的距离之和最小。通…

【科研小小白】理解图片容量、像素、尺寸、分辨率各自含义、 像素、分辨率与实际尺寸之间的转换关系

理解图片容量、像素、尺寸、分辨率各自含义&#xff1a; 通过之前的学习&#xff0c;我们知道了图片有这4个参数&#xff0c;下面给大家总结一这下4个参数的具体含义。 1、容量&#xff08;占内存&#xff09;&#xff1a;是指图像文件的存贮空间&#xff0c;也就是文件的大小…