33 lines
581 B
Ruby
33 lines
581 B
Ruby
# Représente une carte à jouer avec sa valeur et sa couleur.
|
|
class Card
|
|
attr_reader :value, :suit
|
|
|
|
def initialize(value, suit)
|
|
@value = value
|
|
@suit = suit
|
|
end
|
|
|
|
# Retourne une représentation de la carte sous forme de string.
|
|
def to_s
|
|
"#{@value} of #{@suit}"
|
|
end
|
|
|
|
# Retourne la force de la carte sous forme d'integer.
|
|
def strength
|
|
if @value.match?(/\A\d+\z/)
|
|
@value.to_i
|
|
else
|
|
case @value
|
|
when 'ace'
|
|
11
|
|
when 'jack'
|
|
12
|
|
when 'queen'
|
|
13
|
|
when 'king'
|
|
14
|
|
end
|
|
end
|
|
end
|
|
end
|