問題タブ [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.

0 投票する
2 に答える
421 参照

c++ - ファイルの値をトークン化し、2D 配列に格納する方法

次のような内容を含むテキストファイルがあります: 1|2|3|4|5|.......23|24|25

このファイルを読み取り、値をトークン化し、値を 2D 配列に入力する必要があります。

「|」を使用して値をトークン化する必要があります delimとして2D配列に値を入力してください...助けてください。上記が正しくないことはわかっています。助けてください。

0 投票する
3 に答える
445 参照

java - tictactoe ゲームで check_game_state メソッドを実行するにはどうすればよいですか?

ゲームが終了したのか、引き分けなのか、まだプレイできるのかを知りたい. しかし、動的コードでそれを行いたいです。

たとえば、次のように 3*3 tictactoe ゲームに対して静的に実行します。

4*4 または 5*5 以上のボードで動的に実行したい。しかし、どうすればそれができますか?出来ますか?

0 投票する
2 に答える
200 参照

java - 再帰が戻らず、スタック オーバーフローが発生するのはなぜですか?

まず、これは課外授業の宿題の一部なので、答えないでください。何が起こっているのか、どこに問題があるのか​​ を理解するのを手伝ってください. これは、プレイヤーに基づいて最善の動きを決定するためにゲームが再帰的に実行される Tic-Tac-Toe ジェネレーターです。(教授は、X と O の代わりに、白の「W」と黒の「B」を使用します)

私の主な再帰的メソッドは、TTT ボード上の入力位置に基づいて状態スコアを返します。白がその位置から強制的に勝つ場合は 1、引き分けの場合は 0、黒がその位置から強制的に勝つ場合は -1:

基になるプライベート再帰メソッドを呼び出します。

whiteMove のブール値は、白の手であれば true、黒の手であれば false です。関数内の 2 番目のメソッドには、threeInRow が含まれます。

そしてtestEntry:

スタック オーバーフローの原因がわかりません。私のリターンはすべてのケースをカバーしており、私のメソッドには適切なリターンがあるようです。再帰で for ループを使用したことがありません。また、type [] name = name(同じタイプの)は機能しないというのは正しいですよね?そのため、その場合に for ループを実行しました。

0 投票する
1 に答える
685 参照

c - C の学習 - 三目並べのプログラムを完成させるのに助けが必要

HTML、CSS、Wordpress でのカスタム テーマの作成の経験を持つ Web デザインのバックグラウンドを持つ私は、プログラミングを試してみたかったのです。私を手伝ってくれる友人がいて、彼の最近の仕事は三目並べゲームでした。以下は私がこれまでに持っているコードです。現在、プレイヤー 1 とプレイヤー 2 の間でゲーム ループを作成し、ゲームが 0 未完了、1 p1 勝利、2 p2 勝利、または 3 匹の猫のゲームであるかどうかをゲームに認識させるのに問題があります。

読んでくれてありがとう。

0 投票する
3 に答える
2363 参照

java - Java Tic Tac Toe: 文字列を変換して 2 次元配列の値をチェックする

シンプルな三目並べゲームを作っています。単一のスペース文字を使用して 3x3 ボードを初期化しました。

以下に示すように、ユーザーに座標を入力するように求めます。

X が B2 に入り、O が A3 に入ると、ボードは次のようになります。

現在、現在のプレーヤーの動きが有効かどうかを確認するメソッドをコーディングしようとしています。

質問: ユーザー文字列入力 (A=1、B=2、C=3) を変換して、board[x][y] に ' ' 文字が含まれているかどうかを確認するにはどうすればよいですか?

0 投票する
2 に答える
16177 参照

c - Cでの三目並べのコーディング

三目並べのゲームをCでコーディングしています。ロジックは次のとおりです。ユーザーが最初に移動し、スロットを選択します。スロットの位置は、簡単な式を使用して計算されます。次に、選択したスロットが埋められます。次に、コンピュータはランダムにスロットを選択します。このために、stdlib.hのrand()関数を使用しました。最初は、3x3マトリックスのすべての要素が0に設定されています。私の問題は、他のすべての要素が0であり、ユーザーがスロット5またはスロット9を選択した場合でも、ユーザーが勝つことです。コンプも同じです。これが私のコードです-

これらの問題が発生しないように、コードの変更を提案できますか?

0 投票する
0 に答える
604 参照

algorithm - 2 次元配列 Tic Tac Toe AI アルゴリズム

ヒューリスティックやツリー構造ではなく、配列で三目並べゲームを作りたいです。

そのために、「可能性のあるAI」について教えてくれるアルゴリズムはありますか? 必ずしもaiではなく、コンピューターがスポットを選択しました。

ありがとう。

0 投票する
4 に答える
26832 参照

java - TicTacToe AI Java

つまり、これは大学の課題であり、AIが「勝利を収める」方法を知らず、開始時の動きがいつものようにランダムではないことを除いて、すべてがほぼ完了しています。そして彼らの道を下って行きます。割り当てには、AIが「勝利を収める」または「勝利をブロックする」ことができるという点で2つのルールのみが必要でした。

また、ボードがいっぱいになってもゲームは終了しないようです。それは私に私の動きを選ぶように頼みます。

どうすれば改善できるのか、どこが間違っているのかを指摘してくれる人がいるといいなと思っていました。

どんな助けでも大歓迎です。

これが遊びです

そしてここにコンピュータクラスがあります

0 投票する
1 に答える
509 参照

tic-tac-toe - 4 * 4 ボードの Tic Tac Toe で Minimax を適用することは可能ですか、それとも Alpha-Beta 剪定が必要ですか?

Minimax アルゴリズムのみを適用して、Java で 3 * 3 Tic Tac Toe ゲームを実装しました。しかし、ボードのサイズを 4 * 4 に変更すると、プログラムがハングするようです。この問題を解決するために、アルファ ベータ プルーニングを使用して Minimax を適用する必要があるのか​​、それとも Minimax 自体で問題ないのかを尋ねたいと思います。

0 投票する
3 に答える
4388 参照

java - ミニマックスで三目並べ: プレイヤーが先に行ったときにコンピューターが負けることがある。それ以外の場合は動作します

私は無敵の Tic Tac Toe の Minimax アルゴリズムに取り組んでいます。コンピューターが最初に実行されるときと、プレーヤーが最初に実行されるときの両方で機能する必要があります。現在のバージョンでは、コンピューターが先に行っても負けることはありません。ただし、プレイヤーが最初に行った場合、Minimax は最善の手を見つけられないようです (スコアとして常に -1 を返します)。

プレイヤーが最初の動きをした場合、コンピュータのミニマックス スコアが -1 に戻る原因は何ですか?

例:

「Minimax」クラスは次のとおりです。

「ボード」クラスは次のとおりです。

混乱があった場合の「Mark2」クラスは次のとおりです。