trueとfalse
Rubyでは、真偽の状態をtrueとfalseで表します。
happy = true
sad = false
Rubyでは、通常の比較演算子を使ってオブジェクト同士を比較できます。
==を使うと、2つのオブジェクトが等しいかどうかを調べられます>を使うと、左側のオブジェクトが右側のオブジェクトより大きいかどうかを調べられます<を使うと、左側のオブジェクトが右側のオブジェクトより小さいかどうかを調べられます>=や<=を使うと、それぞれ「以上」と「以下」を判定できます通常の演算子を使って、真偽値の論理演算もできます。
&&やandを使うと、x and yがどちらもtrueかどうかを確認できます||やorを使うと、x or yがtrueかどうかを確認できます!やnotを使うと、等しいかどうかを反転できます。たとえばx != y(xとyは等しくない)のように書きます以下はその例です。
# Is "true equal to false"?
true == false # false
# Is "true not equal to false"
true != false # true
# Is 5 greater than 4?
5 > 4 # true
# Is 3 less than or equal to 2?
3 <= 2 # false
遊園地での作業の続きとして、来園者がアトラクションに乗れるかどうかを確認するためのユーティリティメソッドを書くことになりました。
Attendee#has_pass?メソッドを実装して、ライドパスの有無に基づく真偽値(true/false)を返すようにしましょう。
Attendee.new(100).has_pass?
# => false
Attendee#fits_ride?メソッドを実装して、身長に基づいて来園者がアトラクションに乗れるかどうかを確認します。
アトラクションの最低身長は引数として渡されます。
来園者の身長は、アトラクションの最低身長以上でなければなりません。
Attendee.new(140).fits_ride?(100)
# => true
Attendee#allowed_to_ride?メソッドを実装して、来園者がアトラクションに乗ることを許可されているかどうかを確認します。アトラクションの最低身長は引数として渡されます。来園者はライドパスを持っていて、かつアトラクションに乗れる体格である必要があります。
attendee = Attendee.new(100)
attendee.issue_pass!(42)
attendee.allowed_to_ride?(120)
# => false