0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

条件式で注意したいこと

Posted at

【概要】

1.結論

2.具体例

1.結論

上から読み込まれるので書く順番に気をつける!

2.具体例

たとえば、以下の3つの条件を基に出力するプログラムを記載する場合を見てみます。

❶20以下であれば"20以下の数字"と出力
❷20より大きい数字であれば"20より大きい数字"と出力
❸20以下で0以下であれば"0以下の数字"と出力

この場合で以下の記載をしています。

int = gets.to_i

if int <= 20
  puts "20以下の数字" #❶
elsif int <= 0
  puts "0以下の数字" #❷
else
  puts "20より大きい数字" #❸
end

この場合、int に"-1"と記載すると❶の

if int <= 20
  puts "20以下の数字"

が反応してしまい、本来出したい❷の出力がされません。
これはプログラムは上から下に順番に読み込まれるためです。(defはあとから読み込み、javascriptの関数宣言は先に読み込まれるといった例外はあります。)

なので❶と❷の順番を入れ替えて

int = gets.to_i

if int <= 0
  puts "0以下の数字" #❶
elsif int <= 20
  puts "20以下の数字"  #❷
else
  puts "20より大きい数字" #❸
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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?