Timesループ
CoddyのRubyジャーニー「基礎」セクションの一部 — レッスン 44/88。
Rubyは、特定の回数だけコードを繰り返すための、よりエレガントな方法を提供します。timesループは、ほとんど英語のように読めるRubyスタイルのアプローチです。
範囲を設定する代わりに、単に数値に対して times を呼び出します:
3.times do
puts "Hello!"
endこれは "Hello!" を3回出力します。do...end ブロック内のコードは、ちょうど3回実行されます。カウンタ変数が必要ない場合は、for i in 1..3 と書くよりもすっきりします。
しかし、現在どのイテレーション(繰り返し)の中にいるかを知る必要がある場合はどうすればよいでしょうか? times ループは、0から始まるインデックスを提供することができます。
4.times do |i|
puts i
end
# 出力: 0, 1, 2, 3パイプ |i| に挟まれた変数 i は、現在の反復回数を受け取ります。1からではなく0からカウントされることに注意してください。これは、繰り返しの処理とカウンタの両方が必要な場合に便利です:
3.times do |num|
puts "Iteration #{num + 1}"
end
# 出力: Iteration 1, Iteration 2, Iteration 3timesループは、必要な繰り返しの回数が正確にわかっていて、クリーンで読みやすいコードを書きたい場合に最適です。
チャレンジ
簡単入力から数値 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チートシート
timesループは、コードを特定の回数だけ繰り返します:
3.times do
puts "Hello!"
end現在の反復回数(0から開始)にアクセスするには、パイプの間に変数を使用します:
4.times do |i|
puts i
end
# 出力: 0, 1, 2, 3計算の中でインデックス変数を使用することができます:
3.times do |num|
puts "Iteration #{num + 1}"
end
# 出力: Iteration 1, Iteration 2, Iteration 3自分で試してみよう
# 繰り返しの回数を読み込む
n = gets.to_i
# TODO: 以下にコードを記述してください
# timesループとそのインデックスを使用して、2の掛け算の九九を表示します
# 形式: 2 x [index] = [result]このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。