トラック
/
Ruby
Ruby
/
演習
/
遊園地の改良
遊園地の改良

遊園地の改良

学習演習

はじめに

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

説明

遊園地での作業の続きとして、来園者がアトラクションに乗れるかどうかを確認するためのユーティリティメソッドを書くことになりました。

1. 来園者がライドパスを持っているかを確認する

Attendee#has_pass?メソッドを実装して、ライドパスの有無に基づく真偽値(true/false)を返すようにしましょう。

Attendee.new(100).has_pass?
# => false

2. 来園者がアトラクションに乗れるかを確認する

Attendee#fits_ride?メソッドを実装して、身長に基づいて来園者がアトラクションに乗れるかどうかを確認します。 アトラクションの最低身長は引数として渡されます。 来園者の身長は、アトラクションの最低身長以上でなければなりません。

Attendee.new(140).fits_ride?(100)
# => true

3. 来園者がアトラクションに乗ることを許可されているかを確認する

Attendee#allowed_to_ride?メソッドを実装して、来園者がアトラクションに乗ることを許可されているかどうかを確認します。アトラクションの最低身長は引数として渡されます。来園者はライドパスを持っていて、かつアトラクションに乗れる体格である必要があります。

attendee = Attendee.new(100)
attendee.issue_pass!(42)
attendee.allowed_to_ride?(120)
# => false
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Ruby Exercism

遊園地の改良を始める準備はできましたか?

Exercismに登録すれば、21個のコンセプト121個の演習、そして本物の人間によるメンタリングとともに、Rubyを学んでマスターできます。すべて無料です。