Menu
CoddyTech

times 循环

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

Ruby 提供了一种更优雅的方式,可以按指定次数重复运行代码。times 循环是 Ruby 风格的写法,读起来几乎就像英语。

你不必设置范围,只需对一个数字调用 times:

3.times do
  puts "Hello!"
end

这会打印 "Hello!" 三次。do...end 块中的代码会恰好运行 3 次。如果你不需要计数器变量,这样比写 for i in 1..3 更简洁。

但是,如果你确实需要知道当前是第几次迭代呢?times 循环可以提供一个从 0 开始的索引:

4.times do |i|
  puts i
end
# 输出:0、1、2、3

竖线之间的变量 i |i| 会接收当前的循环次数。注意,它从 0 开始计数,而不是从 1 开始。需要同时获取重复次数和计数器时,这很有用:

3.times do |num|
  puts "Iteration #{num + 1}"
end
# 输出:Iteration 1, Iteration 2, Iteration 3

当你明确知道需要重复多少次,并希望代码简洁易读时,times 循环非常合适。

challenge icon

挑战

简单

从输入中读取一个数字 n。使用带索引的 times 循环,打印数字 2 的乘法表,显示从 2 x 0 到 2 x (n-1) 的乘积。

每行都应遵循以下格式:2 x [index] = [result]

输入是一个整数,表示循环应运行多少次。

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

2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6

如果输入是 6,输出应为:

2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10

亲手试试

# 读取循环次数
n = gets.to_i

# TODO:在下方编写代码
# 使用 times 循环及其索引,打印 2 的乘法表
# 格式:2 x [index] = [result]
quiz icon自我测试

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

基础知识中的所有课

自己练习: Ruby 在线编译器