カテゴリ: Ruby 更新日: 2025/12/20

Rubyの条件分岐を完全ガイド!初心者でもわかるif文・unless文・三項演算子の使い方

条件分岐 if/unless/三項演算子 ? : の書き方と読みやすさのコツ
条件分岐 if/unless/三項演算子 ? : の書き方と読みやすさのコツ

先生と生徒の会話形式で理解しよう

生徒

「Rubyで条件によって処理を分けたいんですが、どうすればいいですか?」

先生

「Rubyでは、if文やunless文、そして三項演算子を使って条件分岐ができますよ。」

生徒

「三項演算子って聞いたことがないんですが、難しいですか?」

先生

「大丈夫です。順番に学んでいけば誰でも使えるようになります。それでは見ていきましょう!」

1. Rubyのif文とは?

1. Rubyのif文とは?
1. Rubyのif文とは?

Rubyのif文は、条件によって処理を分けるための基本的な書き方です。例えば、「もし〜ならば、この処理をする」といった形で書けます。これは人間の会話と同じで、直感的に理解しやすいです。


score = 80

if score >= 70
  puts "合格です"
end

合格です

この場合、点数が70点以上なら「合格です」と表示されます。条件に合わなければ、何も実行されません。Rubyのif文はシンプルで読みやすいので、プログラミング初心者にもおすすめです。

2. elseとelsifで条件を増やす

2. elseとelsifで条件を増やす
2. elseとelsifで条件を増やす

if文は「もし〜ならば」で使えますが、「そうでなければ」や「別の条件があれば」といった分岐も可能です。そのときに使うのがelseelsifです。


score = 65

if score >= 70
  puts "合格です"
elsif score >= 50
  puts "あと少し頑張りましょう"
else
  puts "不合格です"
end

あと少し頑張りましょう

このように、複数の条件を順番にチェックできます。Rubyのif文は、インデント(行頭の空白)で読みやすく整理することが大切です。

3. unless文とは?

3. unless文とは?
3. unless文とは?

Rubyには「もし〜でないならば」という条件を書くためのunless文もあります。これは、条件が「偽(false)」の場合に処理を実行します。日本語で「〜でなければ」と考えるとわかりやすいです。


logged_in = false

unless logged_in
  puts "ログインしてください"
end

ログインしてください

unlessは便利ですが、条件が複雑になると読みづらくなることもあります。初心者のうちは「否定のif文」として考えると良いでしょう。

4. 三項演算子 ? : の使い方

4. 三項演算子 ? : の使い方
4. 三項演算子 ? : の使い方

Rubyには、条件を短く書ける「三項演算子(さんこうえんざんし)」があります。これはif文を1行で書ける便利な記法です。


score = 80

result = score >= 70 ? "合格" : "不合格"
puts result

合格

この場合、score >= 70 が真(true)なら「合格」、偽(false)なら「不合格」が代入されます。? (はてなマーク)の左が条件、:の左が真の場合、右が偽の場合の処理です。

5. 読みやすさのコツ

5. 読みやすさのコツ
5. 読みやすさのコツ

条件分岐はプログラムを理解するカギになるので、読みやすさを意識しましょう。特に初心者の方におすすめのコツを紹介します。

  • インデントをきれいに整える(2スペース推奨)
  • 条件が長いときは変数に分けて書く
  • unlessは簡単な条件にだけ使う
  • 三項演算子は短い処理だけに使う

例えば、次のように条件を変数にすると読みやすくなります。


score = 85
is_pass = score >= 70

if is_pass
  puts "合格です"
end

合格です

こうすることで、ifの条件がひと目で理解できるようになります。Rubyはシンプルで人間に読みやすい言語を目指しているので、この工夫が大切です。

6. 実生活の例えで理解しよう

6. 実生活の例えで理解しよう
6. 実生活の例えで理解しよう

最後に、日常生活の例でRubyの条件分岐を考えてみましょう。

たとえば「雨が降っているなら傘を持っていく」というルールをRubyで書くとこうなります。


is_rainy = true

if is_rainy
  puts "傘を持っていく"
else
  puts "傘はいらない"
end

傘を持っていく

さらに三項演算子を使えば1行で次のように書けます。


is_rainy = false
puts is_rainy ? "傘を持っていく" : "傘はいらない"

傘はいらない

このように、Rubyの条件分岐は身近な判断をプログラムに置き換えるだけです。初心者でも直感的に理解できるので、まずは簡単な例から慣れていきましょう。

まとめ

まとめ
まとめ

Rubyの条件分岐であるif文・elsif文・else文・unless文・三項演算子の使い方は、日常の判断をそのままコードに置き換えるだけで自然に理解できる構造になっています。条件が真の場合に処理を実行するif文、偽のときに動かすunless文、短い記述で分岐を行う三項演算子などは、Rubyを使ったプログラミングにおいて頻繁に登場する重要な構文です。これらを正しく理解することで、より柔軟で読みやすいコードを書くことができ、アプリケーション開発において効率的な実装が可能となります。また、複数条件を扱うelsifや直感的な比較表現をサポートするRubyの特徴は、初心者でも使いやすい言語設計となっており、条件分岐を段階的に学ぶことで実務にも応用しやすい基礎力が身につきます。 条件の見やすさを保つインデント調整や、複雑な条件を変数にまとめて書く工夫なども、読みやすいRubyコードを作るうえでとても大切なポイントです。特に大きなシステムや複数人で開発する場合には、可読性の高いコードが品質向上につながるため、日頃から意識して書く習慣を身につけておくと役立ちます。 また、Rubyの条件分岐は実生活の「もし〜なら」「〜でなければ」といった思考と一致しているため、プログラム初心者でも想像しやすい仕組みになっています。雨の日に傘を持っていく例のように、普段の判断をコードに変換することで理解が深まり、ロジック構築の感覚も自然に身についていきます。 以下では、今回学んだRubyの条件分岐をより体系的に振り返るために、総まとめとしてシンプルな動作サンプルも掲載しています。基礎文法の理解をさらに強化しつつ、複数の条件を見やすく整理する書き方を確認できます。

条件分岐の総まとめサンプル


weather = "rain"
temperature = 15

if weather == "rain" && temperature < 20
  puts "雨で寒いので傘と上着を持っていく"
elsif weather == "rain"
  puts "雨なので傘を持っていく"
elsif weather == "cloudy"
  puts "曇りなので念のため折り畳み傘を持つ"
else
  puts "晴れなので傘はいらない"
end

message = temperature >= 25 ? "暑い日です" : "過ごしやすい気温です"
puts message

このまとめサンプルでは、複数の条件をand演算子で連結したif文やelsif文、そして三項演算子による短い条件分岐を用いています。特に条件が複数ある場合は、優先順位の高い条件から順番に並べることで処理の意図が明確になります。Rubyは直感的に読み取れる構文が多く、分岐処理も自然な文章に近い書き方になっているため、初心者から中級者まで幅広く活用できる点が魅力です。こうした条件分岐の基本を押さえておくことで、Webアプリケーションの入力チェックや状態管理など、実用的なコードにも応用できるようになります。 さらにunless文を正しく理解しておくことで、「〜でない場合」の記述を簡潔に表現でき、読み手が否定条件を素早く把握できるようになります。ただし、複雑な否定条件をunlessで書くと読みにくくなるため、場面に応じてif文との使い分けを意識するとプログラム全体の可読性が向上します。 条件分岐はRubyの基礎でありながら、プログラム全体の流れを決定づける重要な要素です。今回の解説とサンプルコードを活用して、さらに実践的な記述へと発展させていきましょう。

先生と生徒の振り返り会話

生徒

「if文やelsif文がこんなに使いやすいとは思いませんでした。三項演算子も短く書けて便利ですね。」

先生

「そうですね。Rubyの条件分岐は読みやすさが大きな特徴です。場面ごとに適切な書き方を選べば、より自然でわかりやすいコードになりますよ。」

生徒

「unless文は少し慣れが必要ですが、否定の条件を書くときに便利だと感じました。」

先生

「その通りです。簡単な否定条件のときに使うとよりスッキリします。ただ、読みづらくなりそうなときは無理に使わずif文で書く方がよいですよ。」

生徒

「今日のまとめを読んだことで、条件分岐の考え方がすごく整理されました!次はもっと複雑な条件にも挑戦してみます。」

先生

「ぜひいろいろ試してみてくださいね。条件分岐を自在に使えるようになると、プログラムの表現力がぐっと広がりますよ。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Rubyのif文とは何ですか?初心者にもわかるように教えてください。

Rubyのif文は「もし条件が当てはまるなら、この処理を実行する」という意味で使う条件分岐の基本です。プログラミング初心者でも直感的に使える構文で、シンプルで読みやすいのが特徴です。
関連記事:
カテゴリの一覧へ
新着記事
New1
データベース
SQLの処理が遅くなる原因とは?初心者向けにデータベースパフォーマンス最適化を完全解説
New2
Ruby
RubyのネストHash操作を徹底解説!digとtransformメソッドで複雑なデータも楽々
New3
Rails
Railsインデックス設計の極意!爆速サイトを作るためのスキーマ設計ガイド
New4
データベース
SQLのCOMMITとROLLBACKとは?トランザクション操作を初心者向けに完全解説
人気記事
No.1
Java&Spring記事人気No1
Ruby
PATHと環境変数の正しい設定!Windows・Mac・Linux別チェックリスト付き
No.2
Java&Spring記事人気No2
Rails
Railsで日本語と時刻の設定をしよう!初心者でも安心のlocale/zone初期設定チートシート
No.3
Java&Spring記事人気No3
Ruby
Rubyのハッシュを徹底比較!シンボルキーと文字列キーの違いと使い分け
No.4
Java&Spring記事人気No4
Rails
Railsマイグレーションの型選びを完全ガイド!初心者が迷わないカラム設計
No.5
Java&Spring記事人気No5
Ruby
WindowsでRubyをインストールする方法!RubyInstallerとMSYS2を使った完全ガイド
No.6
Java&Spring記事人気No6
Rails
RailsモデルとActive Record基礎|ID戦略を完全理解!AUTO INCREMENT・UUID・ULIDの比較と導入手順
No.7
Java&Spring記事人気No7
Ruby
Rubyのハッシュ走査を完全マスター!each・each_key・each_valueの使い方
No.8
Java&Spring記事人気No8
データベース
ACID特性とは?データベーストランザクションの信頼性を初心者向けに徹底解説