循环
micro:bit 的循环积木,可以让程序像是在绕一个头尾相连的圈一般,不断的重复运作,也可以设定一些逻辑判断,在发生特定行为时停止重复,许多游戏或是灯光效果,都会利用循环来实作。
循环积木有几个分类:重复几次、重复...判断、计次、计次...取值、跳出 / 继续、every...( 每隔多久重复 )。
重复几次
“重复几次”积木可以设定内容的程序要执行几次,重复结束或手动停止重复之后,才会继续执行下方的程序。
下图的例子,micro:bit 启动后会显示爱心跳动的动画,重复四次之后就会清空画面。
重复...判断
“重复...判断”积木会依据后方的逻辑判断,决定程序内容是否继续重复,如果判断 true 就继续重复,判断 false 就停止重复。
如果要使用“重复无限次”,只要让逻辑判断维持 true 即可。
下图的例子,micro:bit 启动后会不断重复显示爱心跳动动画,当按下 A 按钮时,会将变数 a 设为 false,此时爱心动画就会停止重复,清空画面。
计次
“计次”积木包含一个内建变数 ( 默认为 0 ),以及这个变数的数值上限,数值限定为正整数或负整数,每次循环重复时会依据上限决定增加 1 还是减少 1,当变数到达上限时,就会停止重复。
下图的例子,micro:bit 启动后,会按照 0、1、2、3 依序显示变数 index 的数值,直到 index 等于 3 的时候停止。
计次...取值
“计次...取值”是针对数组的循环积木,重复次数依据数组的长度而定,每次重复会依序取出数组的数据,直到取得最后一笔数据后停止重复。
下图的例子,micro:bit 启动后会建立一个 1、2、3、4 的数组清单,透过“计次...取值”积木,就会依序显示数字,直到 4 就停止重复。
跳出 / 继续
“跳出 / 继续”积木可以依据用户自订的逻辑判断:
- 跳出:强制停止重复。
- 继续:让重复重新开始,放在“继续”积木后方的程序“不会”执行。
下图的例子,micro:bit 启动后,会启动一个无限重复的循环,每次重复时会产生一个 0~10 随机数的变数 a,如果 a 大于 5,就使用“跳出”停止重复,不然就会一直显示 a 的数值。
如果将上图的例子改成“继续”,就会变成“如果 a 小于等于 5,会显示爱心,如果 a 大于 5,则不显示爱心,重复继续”
every...( 每隔多久重复 )
“every...( 每隔多久重复 )”积木类似“重复无限次积木”,但加入了每次重复结束后的“等待时间”,可以设定每隔多久重复一次积木的内容。
微信扫码关注
抖音扫码关注