LoginSignup
0
0

More than 3 years have passed since last update.

if → unlessへの書き換え

Posted at

初めに

rubyの問題を私なりの解説で解いていこうと思います。

問題

次のif文をunlessというメソッドを用いて書き換えてください。

if a + b > 0
  puts "計算結果は0より大きいです"
end

ではまず用語について説明していきたいと思います。

unlessとは

unlessとはif文とは逆でfalseの場合に処理が実行されます。公式リファレンスもあるのでそちらもご覧ください。
公式リファレンス

解答

解答は簡単です。if文と逆となので計算式を逆にしifをunlessにすればいいのです。

unless a + b < 0
  puts "計算結果は0より大きいです"
end

上記の文で正解っぽく見えますが実はこれは不正解になります。
この場合だと0の際に条件式がfalseとなり文字列が表示されてしまいます。<を<=にして0以上とすれば0が含まれなくなります。よって以下のコードが正解になります。

unless a + b <= 0
  puts "計算結果は0より大きいです"
end
0
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
0
0