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. 1创建变量 边数 和 图形数。
  2. 2机器人用循环画出图形的每一条边。
  3. 3每画完一条边,机器人转动 360 ÷ 边数 度。
  4. 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. 1循环对程序有什么帮助?
  2. 2什么时候应该使用 重复执行 循环?
  3. 3如果 速度 = 5,再增加 2,新值是多少?
  4. 4控制机器人时为什么要限制速度?

Sẵn sàng kiểm tra kiến thức?

Chuyển sang phòng thi riêng để làm bài, xem kết quả và giải thích.

第1部分能力测评:Scratch 逻辑与基础积木 →14 questions · 15 minutes