問題タブ [tic-tac-toe]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
artificial-intelligence - アルファベータ剪定による量子三目並べ - 状態の最良の表現?
私の AI クラスでは、アルファ ベータ プルーニングを使用して、量子三目並べゲームを作成する必要があります。
私はボードの状態を表現する最良の方法について考えています - 私の最初の直感は、一種の近傍行列、つまり 9x9 行列を使用することです.onM[i,j]
は移動を表す整数です (tic-tac -toe) 四角i
でj
マークされています (そのような接続がない場合M[i,j]
はゼロです)。M[i,i]
正方形i
が折りたたまれている場合は 0 ではありません。次に、そのような行列のゲーム ツリーを作成し、従来のミニマックスとアルファ ベータ プルーニングを使用します。
ただし、このアプローチは非常にコストがかかるようです。比較的大きな分岐係数に加えて、すべてのノードの基本操作が必要です。サイクルをチェックし、9x9 マトリックスのすべての同等の状態を見つけます。
よりスマートな解決策が必要だと感じています。おそらく、量子ゲームを古典的な三目並べゲームのセットと見なし、一種の一般化されたミニマックス検索を使用するようなものかもしれません。したがって、すべてが(小さい) 古典的な三目並べの問題のセット? それが正確にどのように機能するかわかりません。
誰かがこの(または同様の)問題の経験があり、正しい方向に私を向けることができますか?
c++ - Builder 6 アプリケーションフォームを使用した三目並べ
Builder 6 で動的ボタンを使用して三目並べゲームを行っていますが、ボタンを押したときに X と 0 を交互に表示する機能で問題が発生しました。
アペルは次のようになります。
使用object[i][j]->v=i;
しない場合、X または 0 のみが表示されます
X などの後に 0 を表示する方法を知りたいです。
java - Java-複数のスタックを使用して「元に戻す」メソッドを許可する
三目並べゲームに取り組んでいて、undoメソッドを実装したいと思っています。これを行うための最良の方法は、別の(複数の?)スタックをセットアップし、実行されたばかりの「移動」のコピーを作成することです。次に、undoが呼び出された場合は、最後の動きをポップして、ゲームボードに再入力します。
そうそう、私は考えを持っていますが、それを実装する方法を理解することはできません。
私が持っているもののいくつか:
設定するには:
次に、ボードを作成するボード方法、表示方法、そしてもちろん3つ続けてチェックする方法があります。
アドバイスありがとうございます
c++ - C++ を学習しようとすると、Tic Tac Toe プログラムが機能しません
私は C++ を学ぼうとしていて、Tic Tac Toe プログラムを書いています。私は本当に混乱していて、遅くなりましたが、何かを達成したように感じることができるように、何がうまくいかないのかを理解したいだけです. どんな助けでも素晴らしいでしょう。これは、まったく機能しない完全なコードです。ありがとう!
これらは私が得るエラーです:
正直なところ、なぜこれらのエラーが発生するのかわかりません。エラーが通常何を意味するのかを調べてみましたが、他の問題は似ていないようでした。
java - Java スレッドを一時停止/再開する方法
私は Java を学んでいるので、Java で Tic Tac Toe Program を作成しています。単純なプロジェクトから始めるのが最適だと思いました。これまでの私のコードは次のとおりです。
と、
これは私の質問です。プレイヤー 1 (青) などのプレイヤーが勝つと、アニメーションが再生されます (ボードが青く点滅します)。しかし、プレイヤー 1 が再び勝つと、プログラムはクラッシュします。
少し調べてみたところ、スレッドを2回開始することはできないため、スレッドを2回開始できないことがわかりました。
スレッドを一時停止し、必要に応じて再起動するにはどうすればよいですか?
c# - ページをリロードせずにTextBoxの値を送信する
ASP.NETベースのTicTacToeゲームに取り組んでいます。私が抱えている問題は次のとおりです。ゲームは2人のユーザー間でプレイされます。最初のものがTextBoxに「x」と入力したとき、ページをリロードせずに「x」を2番目のプレーヤーのコンピューターに表示したいと思います。いくつかのコードが役立つかどうかはわかりませんが、リロードせずに行った方法は次のとおりです(ユーザーはページを手動でリロードする必要があります...ダム):
そして、ページのプリレンダリングで:
などなど...助けてくれる人にはとても感謝しています!
arrays - TicTacToe 配列。勝者の方法であり、スクエアフリーです
ここで何が間違っているのかわかりません。checkRow
コードcheckWinner
とisSquareFree
メソッドの何が問題なのか誰か教えてもらえますか?
これが私のコードです:
python - この TypeError を取り除くにはどうすればよいですか? また、単にリスト内の値を再割り当てしているのになぜ発生するのでしょうか?
コード:
後戻り:
私の tic-tac-toe プログラムでわかるように、computer_move 関数の board[i] = computer 行が (私がこれを正しく読んでいる場合) エラーの原因です。しかし、私がこの権利を知っていれば、アイテムの割り当てはリストで許可され、関数の「ボード」のローカルコピーを作成して、関数内で値やその他のものを再割り当てできるようにします...
どんな入力でも大歓迎です。これは私の最初の本格的なコードなので、問題の関数がめちゃくちゃに見える場合
c# - 別のユーザーのページをリロードする
プレーヤー間でプレイされる三目並べまたは sth のインターネット ゲームを作成したとします。したがって、プレーヤーが「x」または「o」などの入力を入力すると、対戦相手は自分の PC でそれを受信する必要があります。
タイマーでこれを作る方法を知っています。でも、イベントで作ることに興味があります。つまり、入力が与えられると、イベントをキャッチします。次に、このイベントは相手のページをリロードし、相手は情報を受け取ります。
それを達成する方法はありますか?そして、それは価値がありますか?
ご回答ありがとうございます。