Session 245 minutes
第2课:循环与变量——让机器人不停运动的秘诀
Learning objective: 学习无限循环(重复执行)、固定次数循环(重复执行 N 次),以及声明分数、速度等变量。
Theory & practice
🔁 第2课:循环与变量
🎯 学习目标
完成本课后,你将能够:
- 区分 重复执行 N 次 和 重复执行 两种循环。
- 用循环让程序更简短。
- 创建变量来保存次数、分数或速度。
- 结合循环和变量来控制角色。
1. 什么是循环?
生活中很多事情会一遍又一遍地发生:
- 心脏不停地跳动。
- 车轮转了很多圈。
- 警示灯一亮一灭。
- 机器人反复检查传感器。
在编程中,循环能让一组积木重复执行,而不用把同样的积木写很多次。
例如,不必把 移动 10 步 写 10 次,可以这样写:
text
当绿旗被点击
重复执行 10 次
移动 10 步角色一共移动:10 次 × 10 步 = 100 步
2. 两种主要的循环
Mục Trọng Tâm
🔢 重复执行固定次数
重复执行 [10] 次 积木会把里面的积木执行指定的次数,然后停止。
text
当绿旗被点击
重复执行 4 次
移动 80 步
右转 90 度这个程序让角色沿正方形移动。
适用于:
- 事先知道要重复多少次。
- 让灯正好闪 5 次。
- 让机器人正好跑 3 圈。
- 画出边数固定的图形。
Mục Trọng Tâm
♾️ 一直重复
重复执行 积木会一直运行,直到点击红色停止按钮 🛑。
text
当绿旗被点击
重复执行
移动 5 步
碰到边缘就反弹碰到边缘就反弹 是 运动 类中的一个积木。角色碰到舞台边缘时会自动掉头。适用于:
- 机器人需要持续检测传感器。
- 游戏需要持续检测键盘。
- 红绿灯循环工作。
- 机器人一直前进直到遇到障碍物。
| 循环类型 | 运行次数 | 会自动结束 |
|---|---|---|
重复执行 [ ] 次 | 事先确定 | 是 |
重复执行 | 无限 | 否 |
3. 变量——保存信息的盒子
变量就像一个贴着名字的盒子,用来在程序中保存信息。
例如,变量 速度 的初始值是 5:
text
将 [速度] 设为 [5]想让速度增加 1:
text
将 [速度] 增加 [1]变量的值会这样变化:
text
5 → 6 → 7 → 8常用的变量:
速度:移动的快慢。分数:玩家的得分。圈数:已完成的圈数。距离:传感器的读数。时间:剩余时间。
💡 给变量起一个有意义的名字,让程序更容易阅读和修改。
4. 结合循环和变量
让角色每次移动后都加速:
text
当绿旗被点击
将 [速度] 设为 [2]
重复执行 8 次
移动 [速度] 步
将 [速度] 增加 [1]
等待 0.2 秒每次循环,角色都移动得更远:
text
2 → 3 → 4 → 5 → 6 → 7 → 8 → 9想让速度不要增长过高,需要用到 如果 ... 那么 条件积木,这会在 第3课 学习。现在先通过选择合适的重复次数来限制速度。
5. 练习:画多边形的机器人
Mục Trọng Tâm
任务
使用变量让机器人画出不同的图形:
- 1创建变量
边数和图形数。 - 2机器人用循环画出图形的每一条边。
- 3每画完一条边,机器人转动
360 ÷ 边数度。 - 4每画完一个图形,
图形数加 1,边数加 1。
Mục Trọng Tâm
参考程序
text
当绿旗被点击
全部擦除
落笔
将 [边数] 设为 [5]
将 [图形数] 设为 [0]
重复执行 3 次
重复执行 [边数] 次
移动 60 步
右转 (360 ÷ 边数) 度
将 [图形数] 增加 [1]
将 [边数] 增加 [1]
等待 0.5 秒机器人依次画出五边形、六边形和七边形。变量 图形数 显示已经画了多少个图形。
💡
全部擦除 和 落笔 积木在 画笔(Pen) 扩展中。点击 扩展 Extension 来添加它。在 第3课 中,你将学习
如果 ... 那么 积木,让机器人遇到障碍物时知道停下来。6. 常见错误
Mục Trọng Tâm
忘记设置初始值
每次程序开始时都要重置变量:
text
当绿旗被点击
将 [圈数] 设为 [0]Mục Trọng Tâm
把增加积木放在循环外面
如果 将变量增加 积木在循环外面,变量只会改变一次。
Mục Trọng Tâm
使用 重复执行 却没有等待
程序可能运行得太快。请加上:
text
等待 0.1 秒🧩 挑战
编写一个从 5 倒数到 1 的程序:
text
当绿旗被点击
将 [倒数] 设为 [5]
重复执行 5 次
说 [倒数] 1 秒
将 [倒数] 增加 [-1]
说 "出发!" 2 秒你能把程序改成从 10 开始倒数吗?
✅ 记住
重复执行 [ ] 次用于事先知道重复次数的情况。重复执行用于需要不停运行的程序。- 变量用来保存会变化的信息。
将变量设为给变量一个新值。将变量增加增加或减少当前值。- 循环和变量结合能让程序更短、更聪明。
Mục Trọng Tâm
快问快答
- 1循环对程序有什么帮助?
- 2什么时候应该使用
重复执行循环? - 3如果
速度 = 5,再增加2,新值是多少? - 4控制机器人时为什么要限制速度?