Scratch积木编程中的循环语句

其实我们很早就接触了循环,就是那块叫“重复执行”的积木,“重复执行”是一个无限循环,一旦点击运行,就美味持久根本停不下来。程序是由上至下顺序执行的,循环内部的程序也一样,重复执行一个“下一个造型”的积木,可以视为将无数块同类积木堆叠在了一块。除了无限循环的“重复执行”,Scratch还有两块类似功能的积木。

scratch_program_loop_p1

当我们明确知道需要循环的次数,比如只是想让小猫移动10次,每次移动一步。我们可以选择固定次数的循环,如图所示,左边循环10次的积木理论上等价于右边不使用循环的积木,二者在执行完指定的步数之后,都会执行紧跟其后的“说你好”这块积木。
scratch_program_loop_p2

之所以说理论上等价,是因为二者执行时的显示效果有一定的差异,前者展示出了缓慢移动的效果,后果在点击的同时,小猫就瞬移到了10步之外,被重复执行积木包裹的积木在循环结束后可能有一小段的等待时间,我们可以尝试在右侧不使用循环的积木块中每隔一步添加一个极短的等待时间,比如0.01秒,这样二者的效果就很接近了。通过比较不难发现,实现同样一个效果,使用与不使用循环,带来的效率提升是肉眼可见的。而这肉眼可见,还只是仅循环10次的对比效果。

scratch_program_loop_p3

当然也会有不知道何时能结束的情况,就比如我们开始了一局新游戏,玩家有可能因为不熟悉操作,遇到第一个怪的时候就翻车,也可能超常发挥一键通关,所以我们无法提前预知游戏的进程是否顺利,但我们可以通过判断玩家的生命值,来确定循环是否应该结束。当生命值降为零的时候,我们就停止循环。演示里只是简单的每次循环都让“我的变量”减1,实际操作中,当然需要添加更为复杂的判断,比如判断有没有增益道具,有没有碰到怪物,因为我们还没有涉及判断,这里就不展开了。

给TA赞助
共{{data.count}}人
人已赞助
综合资讯

Scratch编程角色的旋转与方向

2023-7-26 8:25:20

综合资讯

Scratch加速某一部分程序的运行

2023-7-27 8:33:06

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索