LoginSignup
4
0

More than 1 year has passed since last update.

【Ruby 】 ターミナルから数値出力 gets.to_iで数値変換

Posted at

※初心者向け
※アウトプット練習の為

開発環境
rails 6.1.4.1
ruby 2.6.5

問題内容

ターミナルから数字を入力して、数字に応じて以下のように出力するプログラムを書いてください。
・0以下の数値なら0以下の数字です
・10以上の数値なら10以上の数字です
・1以上9以下の数値なら0より大きく10より小さい数字です

雛形

input = gets.to_i

#ここからソースコード記述。

解答

input = gets.to._i

if number <= 0
 puts "0以下の数字です"
elsif input >= 10
 puts "10以上の数字です"
else
 puts "0より大きく10より小さい数字です"
end

解説

①ターミナルから数値を入力する書き方
②条件分岐の書き方
の2つに分けて解説します。

①ターミナルから数値を入力する書き方

ターミナルから数値を入力するにはgetsというメソッドを使います。このgetsメソッドを使って入力した値は全て文字列になります。そのためターミナルでは数字を入力しても、プログラムで使うときには文字列に変換されてしまいます。

そこでgetsの値をto_iメソッドを使って数値に変換します。

 input = gets.to_i

②条件分岐の書き方

条件分岐はif文を使います。今回は3つのパターンで条件を分けるため、elsifとelseも使います。

if 条件1
  # 条件1のときの処理
elsif 条件2
  # 条件2のときの処理
else
  # 条件3のときの処理
end

今回の条件は数値の比較です。比較には<や==などの比較演算子を使います。
今回は10以上や0以下という比較なので、<=または>=を使います。=を付けた場合は以下や以上という意味になります。

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0