Menu
CoddyTech

跳出循环

本课属于 Coddy Ruby 学习旅程的“基础知识”单元。第 41 课,共 88 课。

有时,你需要在循环自然结束前提前退出。break 关键字可以让你立即停止循环,并继续执行循环后面的代码。

想象一下,你正在查找某个特定的数字。找到后,就没有必要继续检查剩下的内容了:

for i in 1..10
  if i == 5
    puts "Found it!"
    break
  end
  puts i
end
puts "Loop ended"

这会依次输出 1、2、3、4,然后输出 "Found it!",最后输出 "Loop ended"。当 i 达到 5 时,会执行 break,循环立即停止。6 到 10 不会被处理。

break 关键字适用于任何类型的循环。下面是一个使用 while 循环的示例:

count = 0
while true
  count += 1
  if count > 3
    break
  end
  puts count
end

这会输出 1、2、3。虽然条件是 true(通常会导致循环永远执行),但当 count 大于 3 时,break 会停止循环。

challenge icon

挑战

简单

从输入中读取两个整数:

  1. 一个 limit,表示从 1 开始的范围上限
  2. 一个要查找的 target 数字

遍历从 1 到 limit 的数字。每个数字单独打印一行。到达 target 时,打印 Found!,而不是该数字,并立即使用 break 停止循环。

如果目标数字在范围内,循环应提前停止。如果目标数字大于上限,则会打印从 1 到上限的所有数字。

例如,如果输入是 10 和 4,输出应为:

1
2
3
Found!

如果输入是 5 和 8,输出应为:

1
2
3
4
5

亲手试试

# 读取输入
limit = gets.to_i
target = gets.to_i

# TODO: 在下方编写你的代码
# 从 1 循环到 limit
# 每行输出一个数字
# 到达 target 时,输出说明中指定的准确文本,然后退出循环
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: Ruby 在线编译器