ターミナルから数字を入力して、数字に応じて処理を変えるプログラムを作成したいと思います。
- 10以下なら「10以下の数字です」
- 10より大きい数字なら「10より大きい数字です」
- 10以下でかつ0以下なら「0以下の数字です」
このように出力できるプログラムを作成します。
初めに、ターミナルから数字を入力して変数に代入します。
input = gets.to_i
getsメソッドを使って入力した値は全て文字列になるため、数字を入力してもプログラムで使うときは文字列に変換されてしまいます。そこで、to_iメソッドを使って数値に変換しています。
次にif文を使って条件分岐をしていきます。if文は先に書いた条件から判断をしていくため、その下に書いた条件に当てはまったとしてもスルーされます。
この規則を念頭に順番を考えていきます。
input = gets.to_i
if input <= 0
puts "0以下の数字です"
elsif input <= 10
puts "10以下の数字です"
else
puts "10より大きい数字です"
end
このような順番で記述をしていくことで0以下の数字が入力されたときでも、10以下の数字ですと出力されることがなくなります。