【Ruby】レッスン2-01:比較演算子と論理演算子を理解しよう

記事内に商品プロモーションを含む場合があります

この記事で学べる知識:比較演算子、論理演算子

この記事の練習問題を解くために必要な知識:
基礎文法(レッスン1)比較演算子と論理演算子if文による分岐処理case文による分岐処理for文による繰り返し処理while文による繰り返し処理until文による繰り返し処理繰り返しの制御

<<前のページ Ruby記事一覧 次のページ>>

Rubyの「比較演算子」と「論理演算子」とは

この章ではRubyにおける「比較演算子」と「論理演算子」の意味や使い方を学習します。

この記事には練習問題はありません。次回の条件分岐の記事と一緒にしてあります。

Rubyには値を比較したり、条件を組み合わせたりするための「比較演算子」と「論理演算子」が用意されています。

これらの演算子を使うことで複数の条件を評価し、結果として「true(真)」または「false(偽)」の値を得ることができます。

今回は比較演算子と論理演算子の基本的な使い方を学びましょう。

比較演算子とは?

比較演算子は2つの値を比較し、その関係が成り立つかを確認するために使用します。

以下が主な比較演算子です。

  • == : 等しい場合にtrueを返します。
  • != : 等しくない場合にtrueを返します。
  • < : 左の値が右の値より小さい場合にtrueを返します。
  • > : 左の値が右の値より大きい場合にtrueを返します。
  • <= : 左の値が右の値以下の場合にtrueを返します。
  • >= : 左の値が右の値以上の場合にtrueを返します。
a = 10
b = 20

puts a == b   # false (aとbは等しくない)
puts a != b   # true (aとbは等しくない)
puts a < b    # true (aはbより小さい)
puts a > b    # false (aはbより大きくない)
puts a <= 10  # true (aは10と等しいかまたは小さい)
puts b >= 30  # false (bは30より小さい)

このように比較演算子を使うと数値や文字列を比較し、プログラムの判断材料として活用できます。

比較結果は「true」または「false」として得られます。

論理演算子とは?

論理演算子は複数の条件を組み合わせて1つの結果を得るために使用します。

Rubyには以下の論理演算子があります。

  • && : 両方の条件がtrueの場合にtrueを返します(AND演算)。
  • || : いずれかの条件がtrueの場合にtrueを返します(OR演算)。
  • ! : trueとfalseを反転させます(NOT演算)。
x = 5
y = 10

puts (x < y) && (y > 0)   # true (両方の条件が満たされる)
puts (x > y) || (y > 0)   # true (いずれかの条件が満たされる)
puts !(x < y)             # false (x < y の結果を反転)

論理演算子は複雑な条件を扱うのに役立ちます。

例えば複数の条件がすべて満たされているかを確認する場合には&&を使い、どれか1つの条件でも満たされていればよい場合には||を使います。

比較演算子と論理演算子の組み合わせ例

実際には比較演算子と論理演算子を組み合わせて条件を表現することが多いです。

以下はその組み合わせを使って複数の条件をチェックする例です。

a = 15
b = 20
c = 10

puts (a > c) && (b > a)   # true (a > c かつ b > a の両方がtrue)
puts (a > b) || (c < b)   # true (a > b がfalseでも、c < b がtrue)
puts !(a == c)            # true (a == c の結果がfalseなので、それを反転)

このように複数の比較を組み合わせることで、より柔軟な条件設定が可能になります。

論理演算子を使うことで、複雑な条件判断も一度に行うことができます。

まとめ

比較演算子と論理演算子は条件を評価してプログラムを動的に制御するための重要なツールです。

比較演算子を使って値を比較し、論理演算子で条件を組み合わせることで、Rubyプログラムでさまざまな条件分岐や動作の制御が可能になります。

次回はこれらの演算子を利用したif文による分岐処理について学びましょう。

比較演算子と論理演算子の練習問題

この記事には練習問題はありません。次回の条件分岐の記事と一緒にしてあります。

<<前のページ Ruby記事一覧 次のページ>>

この記事への質問・コメント

この記事を作成するにあたりAIを活用しています。

問題ないことは確認していますが、もし間違いや表現の違和感などありましたら、ご指摘頂けると大変助かります。






    Rubyのテキスト&問題集トップへ戻る
    トップページへ戻る