• ベストアンサー

ポーカーを作りたいのですが・・・

ポーカーを作りたいのですが、カードを配る所まではなんとか自力で出来たのですが・・・。 肝心のカードの交換が分かりません(T_T) 一応、チェックボックスとイメージを配列で処理しているのですが・・・。 簡単な配列しか分からない私が挑戦するにはまだポーカーは早かったのでしょうか??

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

挑戦するのに早いも遅いもないと思いますよ。 難易度はそれなりに高いですが、目的があるだけにいい題材になるとは思います。 結構メジャーなゲームなので、それなりに本などにサンプルが載っているとは思うので、最終的にはこれらを手本に作るといいでしょう。 まずは簡単な、役のチェックのない単純なポーカーを作ってみてはいかがでしょうか。 質問の文章からでは、どのような方法でプログラムを作成されているかわかりませんので、ポーカーを作るにあたって基本から説明します。 ポーカーというゲームを考えたときに、まずはどういうデータが必要かを考えます。 まずはトランプのカードが52枚あります。 これらの数字やマークはすべて違いますから、52個の配列を作成し、それらに数字とマークのデータを入れることになります。 構造体を使うと後々役のチェックにも便利でしょうから、構造体について少し勉強してみるとよいでしょう。 次に自分の手札についてですが、これは5枚のため、5個の配列を作成してやります。 後の説明のために、Yama(52)とTefuda(5)という配列の変数名にするとします。 データ構造が決まれば、あとはカードを配るという作業があります。 まずは、自分の手札にカードを山から5枚取得します。 そして、次にいらないカードを交換します。 ここで考えてほしいのは、手札を配るのも、カードの交換で新しいカードを取るのも、同じ作業であるということです。 つまり、最初の手札を配るということは、Tefuda(1)~Tefuda(5)に対して、Yama(52)からランダムでデータを取り出すことです。 そして、カードを交換するということは、Tefuda(n)に対して、Yama(52)からランダムでデータを取り出すことです。 これから考えると、手札を配るのも、カードの交換も、同じ関数で処理できることがわかります。 とりあえずは、これを参考にプログラムをもう一度見直し、作成されてはどうでしょうか。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Hk2001
  • ベストアンサー率48% (24/49)
回答No.2

早い事はないと思います。 カードの交換より、対コンピュータでゲームをする場合に コンピュータのアルゴリズムを考えるほうが大変では? 交換の方は、最初にランダムで52+1枚を配列に格納して 配列から順番に配る方法だと 自分手札1 相手手札1 自分手札2 相手手札2 ・・・ という風になるのですが 仮に自分手札 1~5枚がインデックス 1~5 相手手札 1~5枚がインデックス 6~10 として カードを一枚配るという関数をインデックスを引数に作ってあげれば 最初に配る時も交換するときも要領は同じはずです。 あとは、役の判断ができればなんとか、できるのでは?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ポーカーのやり方

    ポーカーのやり方がわからず困っています。ちなみに僕たちのやりかたは、カジノのような意味での親対子ではなく、親は単なるカードを切る役目等だけで基本的には皆同じ立場です。また具体的にやり方が分からないところは以下の5点です。 1、ビットについて   一回目、二回目のビットにおいて、万が一誰もビットせずに一周してしまった場合どのように   なるのでしょう。 2、ドロップについて   一回目のビットに対してもドロップできますが、例えば何度か勝負をして一番チップを持って   いる人間が、その後勝負をせずに全ての局面においてドロップをして参加費だけで済まし   勝ち逃げする事はルールでちゃんと制限されているのでしょうか。 3、チェックについて   ルールの紙に、「パスの一種でレイズはできない」と書いてありますが、それはチェックをした   後はレイズすることはできない、つまりチェック=パス&今後のレイズ権の放棄という事なの   でしょうか。 4、カード交換   ルールの中に、「最初のビット後にゲーム参加者が三人いた場合、不要カードを捨ててその   枚数を引く事ができる」とあるのですが、これの意味は三人以下ならゲームは成立しないとい   う意味なのでしょうか。それともカード交換なしで第二のビットに進むという事なのでしょうか。   またポーカーの参加人数は二人以上とあるのですが、もし二人や、ギリギリの三人でやった   場合もこの制限はかかるのでしょうか。 5、ゲームの回数   ポーカーのルールブックには何度か勝負してチップの多さを競うとあるのですが、一般的に   何ゲーム位やるものなのでしょうか。 よろしかったらアドバイスお願いします。  

  • ポーカーのイカサマを教えてください

    タイトルどおり、ポーカーでのイカサマの方法を教えてください ゲーム方法は、最初に5枚引いてその後1回カードを交換。その後降りるか掛け金をいうかして、最後に残った人が勝負する方法です。

  • Action Script 2.0 配列の比較

    複数のチェックボックスの値(true,false)を取得して配列に格納し、別の配列(A、B、C)と比較をし一致項目の多い配列を決める処理を実現したくて四苦八苦しておりました。 更に細かく書かせて頂くと 1.チェックボックスは12個 2.複数選択可 3.チェックが5個以下の場合は、ボタンを押しても動かないようにする 4.12個全ての値を取得しtrueの値のみの番号を別の配列に入れる チェックボックスの値の取得し、配列に入れるところまでは大丈夫なんですが、その後の「比較して一致項目の多いものを選択」という作業で詰まってました。 例として・・・・ アンサー配列[1,2,3,4,6,8]があった場合 一致項目が多いもの A配列[1,4,5,6,7,8] この場合4個同じ B配列[1,2,3,4,5,6,7,8] この場合6個同じ C配列[1,2,8,9,10,11] この場合3個同じ 結果として ○完全一致の場合の処理 ○一致項目が多い場合の処理 ○3つとも同じ場合の処理 この場合は、B配列に決定という流れを考えてました。 どなたかお知恵を授けて頂ければと思います。

    • ベストアンサー
    • Flash
  • VB2005 ExpressEditionで勉強しています。

    VB2005 ExpressEditionで勉強しています。 カンマ区切りの文字列を一旦配列に入れて配列のデータを ひとつずつリストボックスに入れる処理を作っているのですが、 配列に重複したデータがあるのでそれをひとつにしたいです。 配列にデータが入ってる時か、リストボックスに入れるときのどちらかで やりたいです。いい方法を教えてください。 本などで探したのですが見つかりません。 イメージは、配列が (aaa,bbb,ccc,aaa)だとすると リストボックスに入るときに (aaa,bbb,ccc)になっていればいいです。

  • VBAでコントロールを動的に配置する方法

    VBAでコントロールを動的に配置する方法を教えて下さい。 フォームに n組のチェックボックスとテキストボックスを横方向に動的配置し、標準モジュールからチェックボックスを チェックボックス(x) x=1~n のように配列のような制御したいのです。 画像で見て頂くと、チェックボックスとテキストボックスが n によって縦方向に追加されるイメージです。 どなたか、お知恵を貸してください。

  • チェックボックスの値のチェック

    プログラム初心者です 質問1 HTMLのフォームのチェックボックスから配列でphpに値を渡したときにチェックした値が1個しかなかった時には配列として受け取っているのでしょうか?それとも一個しかない場合は変数として受けとっているのでしょうか? 現状ではissetで調べて値がある場合にはその配列をforeachで取り出して実行しています(実際にやってみたら値1個でも動いていますが気になったので教えてください) 値のチェックはissetのみでいいでしょうか? 質問2 MySQLの方は、チェックの個数分のレコードを削除するために繰り返し処理の中でsqlを最大20回発行するのはダメな処理ですか?(チェック1個の場合は1回のみsqlを発行しています) 一般的に使われているならこれでいこうと思います よろしくお願いします

    • ベストアンサー
    • PHP
  • チェックボックスのON/OFF

    こんにちは。 以下のようなテーブルがありまして <tr> <td>チェックボックス</td> <td>ID</td> <td>名前</td> </tr> このテーブルのTRのどこかをクリックするとチェックボックスを ON/OFFする方法のヒントを頂けないかと思って質問に参りました イメージとしては<label for="">の機能をTRに付けたいのです 作表とチェックボックスの環境としましては データベースから取り出したデータをforで回してテーブルに配置 チェックボックスのタグは各行に1つでこれのON/OFFがしたい チェックボックスのデータは配列で送りたいので○○[]名称 となっております (この辺りにはPHPを使用しています) セルクリックで背景色を変更するサンプルと、チェック全選択/全解除の サンプルはあるのですが、組み合わせや加工の仕方がわからず 調べてみてもチェックボックスをクリックしたら…というサンプルばかりで 私が求めている方法は残念ながら見つけられませんでした こんな質問だと丸投げになってしまうので、ヒントや処理の流れだけでも 教えて頂けると助かります ヨロシクお願いします

  • 配列でチェックボックスを作成

    htmlに置いて(javascript等を含む) csvを読み込んでそのデータ数にあった配列を用意し、その配列に対応するチェックボックスを作成したいのですが、実現方法が教えて頂けないでしょうか? またそのやり方で作成したチェックボックスは、チェックがされているかをどのように検知しているのでしょうか? お手数ですが、お答えください。

    • ベストアンサー
    • HTML
  • シート上のオプションボタン、チェックボックスを配列にする。

    シート上のオプションボタン、チェックボックスを配列にする。 Excel2003です。 シート上にオプションボタン、チェックボックスを増やすと、OptionButtonN、CheckBoxN (大文字Nは任意の数値)となります。これをOptionButton(N)のように配列にできないでしょうか? プログラムで扱う場合、配列でしたら処理が楽になると思うからです。 また、同じくシート上にオプションボタンを配置するとどれか1つしか選択できません。(ひとつしかValueをTrueにできません。) UserFormのようにFrameがあればその中で1つを選択できるのですが、シート上に直接配置する場合、Frameが扱えないように思います。グループ化して複数選択する方法はないでしょうか。 よろしくお願いします。

  • phpのチェックボックスについて

    チェックボックス1、 チェックボックス2、 チェックボックス3があるとします。 チェックボックス1を押したら次の処理。 チェックボックス1,2を押したら次の処理。 チェックボックス1,3を押したら次の処理。 以下・・・・ と9通りになりますが、チェックボックスを複数選択した場合は、みなさまはどのようにして処理をしてますでしょうか・・・ 簡単なソースとかもしよければ参考までに教えていただけますとすごく助かります。 よろしくお願いします。

    • ベストアンサー
    • PHP
このQ&Aのポイント
  • InstagramのDMで交流している気になる人との関係に悩んでいます。新しいクラスになってから彼との接触が減り、友達のお節介もあります。私が行動を起こすならば、友達に見られずに行いたいと考えています。
  • 最近は彼からのアプローチが減っていて辛い気持ちです。新クラスになってから私は彼からばかり頼りっぱなしでした。友達のお節介もあり、彼が苦手なので彼を避けているのかもしれません。
  • もうクラスが離れてから何もしていない自分が情けないです。しかし、手遅れかもしれませんが、自分から行動を起こして彼との関係を変えることはできるのでしょうか?どうしたらいいでしょうか?
回答を見る

専門家に質問してみよう