0
puts "Enter your a number:"
class Card
attr_accessor :rank, :suit
def initialize(rank,suit)
self.rank = rank
self.suit = suit
end
def output_card
puts "#{self.rank} of #{self.suit}"
end
end
class Deck
def initialize
@cards = []
@ranks = [:A, 2, 3, 4, 5, 6, 7, 8, 9, 10, :J, :Q, :K]
@suits = [:Spades, :Hearts, :Diamonds, :Clubs]
@suits.each do |suit|
@ranks.each do |rank|
@cards << Card.new(rank, suit)
end
end
end
def shuffle
@cards.shuffle!
end
def deal
@cards.shift
end
end
class Hand
def initialize(deck)
@hand = []
5.times do
@hand << deck.deal
end
end
def display_hand
@hand.each do |card|
@hand.output_card
end
end
end
hand = Hand.new
hand.display_hand
puts hand
5枚のカードを出力するカードゲームを構築しようとしています。しかし、5枚のカードを出力するのに問題があります。私が呼ぶときルビーで5枚のカードを手に入れたカードゲームを作成しようとしています
card_game.rb:46:in `initialize': wrong number of arguments (given 0, expected 1) (ArgumentError)
from card_game.rb:64:in `new'
from card_game.rb:64:in `<main>'
:私はこのエラーを取得しておく
hand = Hand.new
hand.display_hand
puts hand