1
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 5 years have passed since last update.

if式の基本

Last updated at Posted at 2019-03-15

if式

ある条件に沿って処理が分かれることを**『条件分岐』**と言います。
if式は条件分岐で使用される制御構造の一つです。

基本の形

if 条件式 then
 条件に当てはまった時に行って欲しい動作
end

注意点

endを必ずつけること。endが無いとエラーが出ます。

example

入力

i=5
if i>0 then
 puts("#{i}は正の整数です。") #見やすいように、行頭を字下げ(インデント)しておく
end

出力

5は正の整数です。

条件に当てはまらない場合の動作も設定する

先ほどの例では条件に当てはまる場合のみの出力でした。

条件に当てはまらない場合の動作も設定してみましょう。

if ~ elseを使う

そのような場合、elseを使用します。

基本の形

if 条件式 then
 条件に当てはまった時に行って欲しい動作
else
 条件に当てはまらなかった時に行って欲しい動作
end
  • 条件に当てはまった場合の行動をif以下に
  • 条件に当てはまらなかった場合の行動をelse以下に記入します

example

入力

puts("数字を入力して下さい")
number = gets.to_i #gets.to_iは1行だけ整数を取得してくれるメソッド
if number>5 then
  puts("#{number}は5よりも大きい")
else
  puts("#{number}は5以下")
end

出力

数字を入力して下さい
7
7は5よりも大きい
数字を入力して下さい
2
2は5以下

行って欲しい動作が3つ以上

さらに動作を分岐させたいときは、elsifを使用します。

注意点


elseifではなく、elsifです。

基本の形

if 条件式1 then
 行って欲しい動作
elsif 条件式2 then
 行って欲しい動作
else
 条件2に当てはまらなかった時に行って欲しい動作
end

example

入力

puts("数字を入力して下さい")
number = gets.to_i
if number>5 then
  puts("#{number}は5よりも大きい")
elsif number<5 then
  puts("#{number}は5よりも小さい")
else
  puts("#{number}です")
end

出力

数字を入力して下さい
7
7は5よりも大きい
数字を入力して下さい
2
2は5よりも小さい
数字を入力して下さい
5
5です

条件が多くなってくると分かりにくいですが、分岐を一つ一つ丁寧に考えていきましょう。

1
0
3

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
1
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?