• 英雄之盾-第11届蓝桥杯Scratch省赛真题第4题


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

    第11届蓝桥杯青少年组省赛原定于2020年3月7日举行,因疫情延期到2020年6月21日进行,形式为在线考试。Scratch分为初级组和中级组,其中初级组面向7~10岁孩子,中级组面向11~14岁孩子。

    英雄之盾,本题是第11届蓝桥杯Scratch省赛真题编程第4题,初级组和中级组都有此题,题目要求考生编程绘制一面英雄之盾,它是由4个不同颜色的实心圆环和一个实心五角星构成的图案。

    先来看看题目的要求吧。

    一.题目说明

    背景信息:

    每个孩子心中都会有一个称为英雄的梦想,为了和平与正义而守护心中的白色象牙塔,今天让我们一来画出超级英雄的守护之盾吧!

    编程实现:

    绘制一面英雄之盾。

    具体要求:

    1). 开始程序后,舞台背景为黑色;

    2). 瞬间画出盾牌除五角星之外的圆环部分(盾牌直径为300);

    3). 缓慢画出除圆环部分之外的白色实心五角星。

    提示:

    1). 全程禁止使用“编辑”中的“加速模式”;

    2). 位置及大小,大致相同即可;

    3). 开启计时器,程序在30秒内执行完。

    评判标准:

    • 20分:舞台背景为黑色;

    • 20分:瞬间画出盾牌除五角星之外的圆环部分(盾牌直径为300);

    • 20分:缓慢画出除圆环部分之外的白色实心五角星;

    • 20分:完整的画出盾牌且形状完全符合要求。

    二.思路分析

    本作品是属于画笔类作品,也就是使用Scratch中的画笔模块来绘制图形。乍一看,感觉有些难度,但是我们运用计算思维的拆分思想将英雄之盾的图案分解成5个独立的图案,问题就变简单了,分解图案如图所示:

    通过上面的分解图,我们的编程实现思路也就非常清晰了,就是绘制4个圆环和一个实心五角星。这里我们需要有一个图层的概念,这里的每一个图案就是一个图层,按照顺序将这些图案(图层)叠加在一起,就得到我们要最终的效果:

    通过上面的图,我们可以看出,所谓的圆环其实就是就是一个点,只不过各个点的颜色和大小不同而已。本题的难点是五角星的绘制,关于五角星的绘制有多种方法,今天超平老师将会介绍一种简单而强大的画法。

    三.编程实现

    根据上面的思路分析,我们将分3步来编写程序。

    • 绘制舞台背景

    • 绘制圆环

    • 绘制五角星

    1). 绘制舞台背景

    本作品要求舞台是黑色的,但默认情况下,舞台是白色的,因此,首先我们需要将舞台背景绘制为黑色。使用鼠标单击舞台背景,并选中背景选项卡,将填充颜色和轮廓颜色都设置为黑色,如图所示:

    然后,用鼠标左键单击矩形框工具,在绘图区拖出一个矩形区域,将整个舞台区域填满即可,如图所示:

    2). 绘制圆环

    有些同学看到圆环开始有些犯难了,实际上非常简单,因为圆环是实心的,可以看成是一个点,只不过这些点比较大而已,因此,我们只需要将画笔粗细设置得大一些,然后落笔点一下即可。

    先来绘制最底层红色圆环,代码如下:

    其它3个圆环,绘制方法是完全一样的,只需要将画笔设置为不同粗细,并设置为相应的颜色即可,这里就先不列代码了。

    3). 绘制五角星

    绘制实心五角星,这是本作品的难点,题目也没有给出任何提示信息。我们要搞清楚五角星的角度关系,如图所示:

    五角星的每个内角都是36度,需要注意的是在使用Scratch画笔绘制五角星的时候,要转的角度并不是44度,而是180 – 36 = 144度。

    如果只是画一颗五角星的轮廓,我们只需要循环5次移动和转向就可以了,但这里要画的是一颗实心五角星。一个比较巧妙的办法就是,选择一个点,作为五角星的中心,从这个点开始,每画一条线,就将线条变长一点,然后旋转144度,直到线条长度等于设定长度为止。

    所以,这里需要新建一个变量,将其命名为”长度“,将长度设置为1,然后重复执行移动和右转指令,每循环一次,将长度增加1,直到长度大于84,代码如下:

    这里的条件”长度 > 84“,是根据当前蓝色圆环大小来定的,在实际创作时,需要经过反复测试才能确定具体的值。

    这种方法的优点是可以确定五角星的中心,可以在任意位置绘制指定大小的五角星。网上有很多教程的方法是从外到内,逐渐减小线段长度,原理是一样的,但是无法确定五角星的中心位置,不够灵活。

    整个作品完整的代码如下所示:

    根据题目的要求,需要开启计时器,所以在点击绿旗时,将计时器清零即可。

    四.总结与思考

    本题难度中等,积木块数量在30个左右,涉及到的知识点主要包括:

    • Scratch画笔相关指令;

    • 绘制舞台背景;

    • 五角星的角度关系;

    • 变量的使用;

    • 循环编程,重点是重复直到循环;

    • 计时器的简单使用。 

    本题融入了数学中的圆和五角星等几何图形,尤其是五角星的角度关系及其计算问题,作品融合了编程、画笔艺术和数学知识,可以全面考察孩子的综合素养和学科融合能力。

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

  • 相关阅读:
    Linux关机命令、选项和原理详解
    实时聊天组合功能,你了解吗?
    Fast-DDS库的安装教程
    dolphinscheduler部署文档
    STM32 寄存器操作 systick 滴答定时器 与中断
    微信小程序和H5之间互相跳转、互相传值
    EMR-Jindo Spark 核心引擎优化
    最新Tuxera NTFS2023最新版Mac读写NTFS磁盘工具 更新详情介绍
    【LSSVM回归预测】基于matlab人工蜂群算法优化最小二乘支持向量机LSSVM数据回归预测【含Matlab源码 2213期】
    ES数据存储和集群路由原理
  • 原文地址:https://blog.csdn.net/diamondwang2012/article/details/127552091