莲花-第10届蓝桥杯Scratch选拔赛真题精选

这篇具有很好参考价值的文章主要介绍了莲花-第10届蓝桥杯Scratch选拔赛真题精选。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

蓝桥杯选拔赛每一届都要举行4~5次,和省赛、国赛相比,题目要简单不少,再加上篇幅有限,因此我精挑细选了一部分题目进行解读。

莲花,本题是第10届蓝桥杯Scratch真题,出现在2019年的市选拔赛考试中,题目要求使用Scratch中的画笔相关指令绘制出一幅四层结构的莲花图形,每一层都是由12个基本花瓣构成的,由外至内每一层的花瓣长度和大小都依次减小,颜色值则不停的增加。

先来看看题目的要求吧。

一.题目说明

编程实现:

1). 设置背景为白色,以坐标(0,0)点为中心绘制一个如下图所示的莲花图形;

2). 四层结构,基本单元中最大的花瓣边长为20,画笔大小为7,颜色值为0,每向内绘制一层,边长减小5,画笔大小减小1,画笔颜色值增加10。

莲花-第10届蓝桥杯Scratch选拔赛真题精选

评判标准:   

  • 10分:设置背景为白色,画笔大小为7,颜色值为0;

  • 30分:在10分标准基础上,能够绘制一个基本花瓣;

  • 40分:在30分标准基础上,能够绘制一圈完整的基本花瓣,共12个;

  • 45分:在40分的基础上,能够绘制题目要求图案,包括4层花瓣;

  • 50分:画笔每向内绘制一层,边长减小5,画笔大小减小1,画笔颜色值增加10。

     

二.思路分析

本题属于Scratch画笔绘制作品,只有一个默认的小猫角色, 如图所示:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

考察的重点是画笔相关指令的灵活运用。乍一看,不知道从何下手,根据题目描述,我们可以发现莲花是一个四层结构,每一层又有12个花瓣组合而成,所以花瓣是这个作品的关键,如果花瓣绘制好了,其它部分相对就比较简单了。

所以,我们可以将作品分成如下3步完成:

  • 绘制一个花瓣

  • 绘制外层花瓣

  • 绘制莲花 

三.编程实现

根据思路分析,我们分如下3步来编写程序:

  • 绘制一个花瓣

  • 绘制外层花瓣

  • 绘制莲花

1. 绘制一个花瓣

绘制花朵的第一步是先绘制一个花瓣,先来看看生活中的花瓣,如图所示:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

从图中可以看出,花瓣可以简单地看成是由两个圆弧组成的,因此绘制花瓣时,可以通过绘制两个对称的圆弧来实现,如下图所示:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

而圆弧又是圆环的一部分,实际上是由很多小的线段组成,我们只需要在绘制线段时不停地旋转画笔即可实现。

我们先来绘制一个1/4圆弧,在小猫角色中编写代码如下:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

需要说明的是,这里右转的角度并不是固定的,可以大一点,也可以小一点,但是要确保重复次数*右转角度 = 90,这里的20是指最外层花瓣的大小,执行代码,绘制效果如下:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

接下来还需要绘制一个1/4圆弧,但是需要先右转90度角才行,否则就和之前的1/4圆弧连在一起形成半圆了,继续编写代码如下图所示:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

再次执行代码,结果如图所示:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

如此一来,我们的第一个基本花瓣就绘制好了,还不错吧。

为了方便,我们使用函数的编程思想将其封装起来,也就是定义一个自制积木用于绘制基本花瓣,编写代码如图所示:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

在这里,有两点需要注意:

1). 我们在自制积木中添加了一个参数“大小”,这个是用来控制花瓣大小的,因为我们的莲花是四层结构,每一层的花瓣大小各不相同。

2). 在绘制完第二个1/4圆弧之后,增加了一个右转90度指令,这个是确保绘制完一个基本花瓣后,角色又回到原始角度方向,确保下一次绘制花瓣时方向不会有偏差。

2. 绘制外层的12个花瓣

有了基本花瓣,接下来就可以绘制最外层的花瓣了,根据题目描述,边长是20,画笔大小为7,颜色值为0,一圈是12个基本花瓣,所以这里需要使用循环,12个花瓣,就是循环12次,每绘制一个花瓣,就旋转 360 / 12 = 30度。

对应的代码如下图所示:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

执行程序,绘制的花瓣效果如下:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

3. 绘制莲花

接着就是绘制里面的3层花瓣了,相信聪明的你已经想到了,这里可以使用循环。不错,使用循环可以极大的简化代码,不过需要注意的是,每一层花瓣的长度、颜色和画笔粗细都不一样,每向内绘制一层,边长减小5,画笔大小减小1,画笔颜色值增加10。

其中,画笔大小的减小和画笔颜色的增加有相应的指令直接使用,相对比较简单,那么,边长要怎么逐次减少呢?

数字本身是不能变化的,比如20就是20,15就是15,无论什么时候都是固定不变的,在编程语言中,这叫常量,就是指不能变化的量。

内容可以变化的量叫变量,因此,我们可以定义一个变量来表示边长的大小,将它的初始值设置为20,每绘制完一圈花瓣,再将变量减少5,也就是增加-5,这部分的代码如下:

莲花-第10届蓝桥杯Scratch选拔赛真题精选

执行程序,一朵美丽的莲花就正式诞生了,至此,整个作品就创作完成了,一起来欣赏一下自己绘制的花瓣吧。

四.总结与思考

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

  • 循环编程,包括指定次数循环以及循环的嵌套使用;

  • 画笔相关指令,包括擦除、落笔、抬笔、设置画笔粗细、设置画笔颜色、更改画笔粗细、更改画笔颜色等;

  • 运动编程,包括移动10步、右转指令、面向方向指令和移到(x,y)等;

  • 自制积木及其参数的使用;

  • 变量的使用。

本题难度中等,关键是如何绘制一个基本花瓣,如果是第一次碰到这类题目,可能有些不知所措,所以说,学习在于积累,一旦掌握了常见图案的绘制和基本的Scratch编程技巧,这类题目就是小菜一碟了。

在绘制莲花的过程中,我们使用了逐层分解的思维模型,将一朵莲花拆分成4层,每一层又拆分成12个花瓣,每个花瓣又拆分成两个1/4圆弧,一步一步缩小问题的规模,将复杂问题变成简单的问题。这种分析问题、解决问题的思维正是编程所提倡的计算思维,也是我们学习编程的真正意义所在。

如果你觉得文章对你有所帮助,别忘了点赞,你的鼓励是我坚持继续写下去的最大动力,Thanks♪(・ω・)ノ。文章来源地址https://www.toymoban.com/news/detail-443471.html

到了这里,关于莲花-第10届蓝桥杯Scratch选拔赛真题精选的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包