1173浏览
查看: 1173|回复: 1

【临沂】【古德微】第8课 创课小作品——警察抓小偷

[复制链接]
本节课我们来实现灯带上小灯的追逐效果,仿佛一名警察在追逐前面的小偷,追上还是追不上全凭各位同学程序的设定了。
首先我们来制作一个流水灯,在上一节课我们已经学习过怎样制作一个流水灯的效果,本节课我们换一种思路来制作流水灯。
首先我们新建一个函数命名为“初始化”。
【临沂】【古德微】第8课 创课小作品——警察抓小偷图1
                              
新建三个变量命名为“灯带点数”,“蓝色”,“无色”。
【临沂】【古德微】第8课 创课小作品——警察抓小偷图2
【临沂】【古德微】第8课 创课小作品——警察抓小偷图3
这样就可以实现一个小灯奔跑的效果了。
思考:为什么循环里面i是从1开始的呢?
为什么有前面简单的程序不用而要这么麻烦呢?这是为了进行我们接下来的任务。
任务二:整条灯带是蓝色的只有一个红色的灯从头跑到尾。
要完成这个任务我们只要稍稍修改一下上面的程序就可以了。
添加二个变量“红色”,“设定颜色”,新增函数“点亮整条灯带”。
【临沂】【古德微】第8课 创课小作品——警察抓小偷图4
【临沂】【古德微】第8课 创课小作品——警察抓小偷图5
【临沂】【古德微】第8课 创课小作品——警察抓小偷图6
看下效果是不是实现了我们的任务二的要求。
我们继续加深任务难度。
任务三:在整条蓝色的灯带上有两个颜色不同的灯相差n的距离在一前一后的奔跑。
新建变量“绿色”代表警察,那么变量“红色”就代表小偷,新建变量“j”表示相差的距离n。
【临沂】【古德微】第8课 创课小作品——警察抓小偷图7
【临沂】【古德微】第8课 创课小作品——警察抓小偷图8
【临沂】【古德微】第8课 创课小作品——警察抓小偷图9
这样就可以实现任务三的要求了,通过观察我们发现两个小灯之间的距离是不变的,如果这样的话警察就永远抓不住小偷了,下面我们继续改进这个程序,让警察逐渐追上小偷。
任务四:在前面任务的基础上实现前面的小灯慢,后面的小灯快。
怎样实现前面小灯慢,后面小灯快的效果呢?这里我们用一个条件积木“如果,那么”。如果警察跑两步时小偷才跑了一步一步这样的话警察不就抓住小偷了吗。
前面两个函数不变,只需要修改主程序为:
【临沂】【古德微】第8课 创课小作品——警察抓小偷图10
这样就可以实现绿灯每走两步红灯走一步的效果。
通过实验我们观察到当绿灯追上红灯后还是会一骑绝尘的继续跑下去,这就不太符合我们警察抓小偷这个故事的流程了,我们接下来继续完善程序实现:1,当绿灯追上红灯后整条灯带显示绿色代表警察胜利。或者2,红灯走到灯带的末尾后整条灯带显示红色代表小偷成功逃脱。
两个函数不变,修改主程序:
【临沂】【古德微】第8课 创课小作品——警察抓小偷图11
通过本节课的学习,在程序的构造过程中同学们有没有一些收获呢,动手操作一下把自己的想法一一实现吧。

rzyzzxw  版主

发表于 2020-4-17 07:50:20

挺有趣的啊。感谢分享。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail