Rangeを用いたForループ
CoddyのRubyジャーニー「基礎」セクションの一部。レッスン 39/88。
ループを使うと、コードを何度も書き直さずに繰り返し実行できます。Rubyでは、forループと範囲を組み合わせると、数列を順に処理する簡単な方法になります。
Rubyの範囲は、値の並びを表します。開始値と終了値の間に2つのドットを置いて作成します。1から5までの数値をループする方法は次のとおりです。
for i in 1..5
puts i
endこれにより、1から5までの各数値がそれぞれ別の行に出力されます。変数 i は範囲内の各値を1つずつ取り、ループ内のコードは各値に対して実行されます。
Rubyには2種類の範囲があります。2つのドットを使う範囲 1..5 は両端の値を含みます(1, 2, 3, 4, 5)。3つのドットを使う範囲 1...5 は最後の数値を含みません(1, 2, 3, 4)。
for num in 1...4
puts num
end
# 出力: 1, 2, 3好きな変数名を使い、ループ内で操作を実行できます。たとえば、各数値の平方を出力するには、次のようにします。
for n in 1..3
puts n * n
end
# 出力: 1, 4, 9チャレンジ
簡単入力から数値 n を読み取ります。範囲を使った for ループで、1 から n までのすべての数値を、それぞれ別の行に出力します。
入力は、範囲の上限を表す単一の整数です。
たとえば、入力が 4 の場合、出力は次のようになります。
1
2
3
4自分で試してみよう
# 入力から数値を読み取る
n = gets.to_i
# TODO: 以下にコードを書く
# 範囲を指定したforループを使って、1からnまでのすべての数値を出力するこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Rubyオンラインコンパイラ