Scratch趣味编程 趣味数学 江苏省蓝桥杯白名单赛事《九宫格下》课件(共11张PPT)

资源下载
  1. 二一教育资源

Scratch趣味编程 趣味数学 江苏省蓝桥杯白名单赛事《九宫格下》课件(共11张PPT)

资源简介

(共11张PPT)
九宫格(下)
教师姓名
学校名称
1). 点击绿旗,角色、背景如图所示(考生自行完成九宫格,每个方格填充的颜色与舞台
背景颜色可随机改变,点击绿旗立刻呈现效果);
2). 可用鼠标将数字(1-9)角色拖拽到九宫格的九个格子中;
3). 当九宫格填满数字时,且横、竖、对角线上对应格子内的3个数字相加都等于15,机器
猫说:"正确!"2秒后回到初始状态;
5). 重复执行2)、3) 、4)步骤。
评判标准:
10分:满足"具体要求"中的1);
20分:满足"具体要求"中的2);
20分,满足"具体要求"中的3);
20分:满足"具体要求"中的4);
10分:满足"具体要求"中的5)。
具体要求
根据题目描述和思路分析,我们可以4步来编写程序:
数据准备
生成九宫格
拖拽数字
判断结果
拖拽数字
这里的9个数字,其逻辑和代码基本上是一样的,我们以数字1为例。
首先,设置好角色的初始位置,代码如下:
拖拽数字
拖拽通常使用”当角色被点击“结合重复执行指令,代码结构如下:
一旦松开鼠标,数字就停在当前位置了,怎么确保数字已经放到格子上去了呢,我们可以增加一个判断,如果碰到格子,就允许放置,否则就回到原位,继续编写代码如下:
拖拽数字
是不是只要拖拽到九宫格中就可以了呢?
当然不是,还得看当前位置是不是已经有其它的数字,所以还需要进行判断。
如果当前格子是空着的,就摆放拖拽的数字,并更新列表中的值,否则数字回到原处,对应的代码如下:
拖拽数字
还有一个小问题,如果数字已经摆放好了,就不应该再拖拽了,如何避免这个问题呢?
可以使用一个变量,用于表示数字的状态,其中1表示可以拖拽,0表示不能拖拽,先将初始值设为1,一旦数字摆放好,立刻将其设置为0,然后的点击的时候进行判断即可。
增加代码如下:
注意,为了方便,这里的变量”_状态“,是一个私有变量,这样9个数字都可以使用相同的名字,互不干扰。
其它8个数字角色的代码,和数字1基本一样,只需要修改一下角色的坐标和列表的替换值即可。
拖拽数字
判断结果当所有数字都摆放完毕,就需要判断正确和错误了,我们如何知道数字摆放完毕了呢?答案是九宫格列表,列表的初始值都是0,每摆放一个数字,其列表项就更新为对应的数字了,所以当列表中没有0时,就说明所有的数字都已经摆放完毕。需要注意的是,一共有8种组合,如果使用与运算指令,代码将会变得特别长,操作起来很不方便,可以使用条件嵌套语句,切换到机器猫角色,编写代码如下:
判断结果
代码不难理解,这里使用了重复执行指令,以满足要求5),注意,在判断完成之后,使用了”广播并等待“指令,发送了一个广播消息。相应的,9个数字角色在接收到广播消息后回到原来位置,并恢复角色的状态和列表中的值,以数字1角色为例,编写代码如下:
相应的,9个数字角色在接收到广播消息后回到原来位置,并恢复角色的状态和列表中的值,以数字1角色为例,编写代码如下:
其它8个角色都需要做相同的处理,这里就不再列出代码了。至此,整个作品就创作好了,赶紧来体验一下吧,你知道怎么摆放才是正确的么。
判断结果
本题是初级组编程部分第5题,分数为80分,积木块数量150个左右(9个数字角色的代码基本一样,只算一个),涉及到的知识点主要包括:
绘制角色;
克隆编程,尤其是多行多列的克隆技巧;
自制积木,重点是不刷新屏幕的设置;
变量,包括全局变量和私有变量;
列表操作,包括增删改查操作;
条件指令的多层嵌套;
事件编程,包括角色点击和广播消息;
作为初级组最后一题,本题难度较大,完成时间大概在35分钟左右,对于大部分同学来说,最大的问题就是完全没有思路。
有些考生之前做过《植树节种树》这道题,结果也没有完成此题,说明理解不够深刻,还不能做到灵活运用。
所以,在学习编程的过程中,除了多练习,还要多思考、多总结,这样才能做到融会贯通。
总结

展开更多......

收起↑

资源预览