Draw クラス
Draw クラスには、以下のメソッドがあります。
- run
- change
class Draw < Poker#ドロー・ポーカーはポーカーのサブクラス
#定数
NDECK = 1#実際のカジノでは、6 デックを 1 スタックとすることが多い
#(ブラックジャックの場合)
M = 5#手札の枚数
N = 5#交換可能な枚数
#クラス変数
#なし
#クラスメソッド
#ドロー・ポーカーを行う
def self.run()
stack = Stack.new(NDECK)#カードの山
player = Array.new #プレーヤーの手札
super(stack)
#カードを配る
0.upto(M - 1) do
player.push(stack.next())
end
#カードを画面に表示する
display(player)
#カードを交換する
change(player, stack)
#カードを画面に表示する
display(player)
#役を確認する
STDERR.printf "%s\n", HANDS[check(player)]
end
#カードを交換する
def self.change(player, stack)
nflag = 0 #真の flag の数
flag = Array.new(player.size, false)#カードの交換フラグ
#交換するカードを決定する
loop do
STDERR.print "Please select the card(s) you want to change (1 - 5). "
STDERR.print "To finish, input 0.\n"
i = gets.chomp
if (i =~ /^[1-M]$/)
if (flag[i.to_i - 1])
next
else
flag[i.to_i - 1] = true
end
nflag += 1
break if (nflag == N)
# elsif (i =~ /^0$/)
elsif (i == '0')#正規表現より処理が早い
break
else
STDERR.print "Input Error!\n"
end
end
#カードを交換する
0.upto(player.size - 1) do |i|
player[i] = stack.next() if (flag[i])
end
end
#インスタンスメソッド
#なし
#アクセスメソッド(アクセサ)
#なし
end
- トランプ・ポーカー
- トランプ・ブラックジャック
- ギャンブルから株式為替まで役立つ資金管理
- 株式投資や為替取引のリスクマネジメント
- カード被害が預金者保護法で補償された体験
- アニメで英会話/台詞逆輸入
- 右脳と左脳を鍛える開発トレーニング