tic-tac-toe 相关问题

Tic Tac Toe是开始编码的流行练习,因为有限的资源和游戏机制可以很容易地掌握并以多种方式表现出来。因为它是一个简短的游戏,所以可以创建一个永不丢失的算法。

如何使用 Minimax 算法和 Alpha Beta 剪枝解决 Tic Tac Toe 4x4 游戏

我使用 Minimax 和 Alpha Beta 剪枝制作了一个 Tic Tac Toe 游戏。我想为 Tic Tac Toe (10x10) 游戏制作一个计算机 AI,但它的游戏树尺寸大得离谱。 我的代码是这样的,...

回答 1 投票 0

我正在尝试制作一个 TicTacToe Ai 来对抗。但是,我尝试在单击第一个方块时出现一个 X,然后一秒钟后出现一个 O

TD { 边框:1px 纯黑; 高度:50px; 宽度:50px;} 让 O1 = 假 让 X1 = 假 让转弯 = 0 函数 X...</desc> <question vote="0"> <pre><code>&lt;html&gt; &lt;body&gt; &lt;style&gt; td { border: 1px solid black; height: 50px; width: 50px;} &lt;/style&gt; &lt;script&gt; let O1 = false let X1 = false let turn = 0 function Xon1() { if(O1 === false &amp;&amp; X1 === false &amp;&amp; turn === 0) { document.getElementById(&#34;1&#34;).innerHTML = &#39;X&#39; let X1 = true setTimeout(compMove, 1000)}} function compMove() { if(X1 === true) { document.getElementById(&#34;5&#34;).innerHTML = &#39;O&#39;}} &lt;/script&gt; &lt;/body&gt; &lt;table&gt; &lt;tr&gt; &lt;td align= &#39;center&#39;&gt;&lt;button id=&#34;1&#34; onclick=&#34;Xon1()&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&gt;-&lt;/button&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&gt;-&lt;/button&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align= &#39;center&#39;&gt;&lt;button&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;/html&gt; </code></pre> <p>我不断尝试不同的事情,但每当我向 compMove() 添加 if 语句时,即使 X1 等于 true,它也不会运行。我不明白我们出了什么问题,请帮忙。</p> </question> <answer tick="false" vote="1"> <p>不要在 <pre><code>Xon1</code></pre> 中使用 let 再次声明 X1 并向所有框添加 ID 这是您正在寻找的潜在代码</p> <p></p><div data-babel="false" data-lang="js" data-hide="false" data-console="true"> <div> <pre><code>&lt;html&gt; &lt;body&gt; &lt;style&gt; td { border: 1px solid black; height: 50px; width: 50px; } &lt;/style&gt; &lt;script&gt; let O1 = false; let X1 = false; let turn = 0; function Xon1() { if (O1 === false &amp;&amp; X1 === false &amp;&amp; turn === 0) { document.getElementById(&#34;1&#34;).innerHTML = &#39;X&#39;; X1 = true; // no need declare X1 again using let so I removed that setTimeout(compMove, 1000); } } function compMove() { if (X1 === true) { document.getElementById(&#34;5&#34;).innerHTML = &#39;O&#39;; } } &lt;/script&gt; &lt;/body&gt; &lt;table&gt; &lt;tr&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;1&#34; onclick=&#34;Xon1()&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;2&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;3&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;4&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;5&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;6&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;7&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;8&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;td align=&#34;center&#34;&gt;&lt;button id=&#34;9&#34;&gt;-&lt;/button&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;/html&gt;</code></pre> </div> </div> <p></p> <p>接下来的步骤一切顺利。</p> </answer> </body></html>

回答 0 投票 0

为什么我的 Tic Tac Toe 游戏机没有记录“Winner!”?

我正在构建一个 Tic Tac Toe 游戏,我不确定为什么我的最终 if 语句 // 如果一行中的所有条目都与用户的符号匹配,则报告获胜者 if (((gameGrid[i][0] == gameGrid[i][1]) ==

回答 1 投票 0

任何人都可以解释什么“std::vector<std::vector<char>> board(3, std::vector<char>(3, ' '));”意思是

我遇到了这段用于构建 Tic-Tac-Toe 游戏的代码,但不知道它意味着什么。谁能用简单的话解释一下? std::vector> 板(3, std::vector 我遇到了这段用于构建 Tic-Tac-Toe 游戏的代码,但不知道它意味着什么。谁能简单解释一下吗? std::vector<std::vector<char>> board(3, std::vector<char>(3, ' ')); 上下文: void drawBoard(const std::vector<std::vector<char>> &board) { for (const auto &row : board) { for (char cell : row) { std::cout << cell << " "; } std::cout << std::endl; } } int main() { std::vector<std::vector<char>> board(3, std::vector<char>(3, ' ')); char currentPlayer = 'X'; int row, col; bool gameOver = false; 该行正在使用 std::vector 的构造函数之一,两次: constexpr vector( size_type count, const T& value, const Allocator& alloc = Allocator() ); 此构造函数用于用 vector 份数 count 来初始化 value。 所以这个... std::vector<char>(3, ' ') ... 用三个元素构造 vector 的 char,所有元素都初始化为 ' '(空格)。 在这个... std::vector<std::vector<char>> board(3, std::vector<char>(3, ' ')); ... value_type 是 std::vector<char>,它会复制 的三个副本 std::vector<char>(3, ' '),这使得 char 的 3x3 游戏板全部初始化为 ' '。

回答 1 投票 0

C 中的井字游戏创建替代输入

我需要重新学习C,我正在学习的课程的一部分要求制作一个简单的井字棋游戏。我已将代码设置为将用户输入视为“输入行(0、1 或 2)和列(0、1、...

回答 1 投票 0

TicTacToe 使用极小极大和 alpha-beta 剪枝无法做出正确的决定

我正在制作一个带有极小极大和 alpha beta 修剪的井字游戏机器人,但它没有达到标准(实际上有点糟糕)。当我尝试玩它时,机器人会错过最明显的动作......

回答 1 投票 0

井字棋游戏初级

我是编程新手,我正在玩初级水平的井字棋游戏,但当用户输入无效值时,我无法设法让我的代码重复。它没有重新问问题,而是结束了

回答 1 投票 0

如何生成井字棋计算机动作的最佳动作

我想创建一种算法,为计算机生成井字棋移动的最佳位置。此外,井字棋函数的行和列值必须由 ran 生成...

回答 1 投票 0

Flutter W/zipro(2568):打开存档构建 pp\outputs pk pp.apk 时出错:错误:转储失败,因为找不到 AndroidManifest.xml

我构建了一个简单的井字棋游戏。起初,当我在物理 Android 设备上运行该程序时,它可以工作,但第二天就不再工作了。它显示此错误。 W/zipro (2568):错误

回答 8 投票 0

如何使用 Java for 循环生成这样的输出?

1 2 3 4 5 6 7 8 9 我正在用这个制作井字游戏;-; 我尝试了一个公式,但结果只是 0 0 0 1 1 1 2 2 2 也真的会

回答 1 投票 0

为什么我的程序在 X 连续三个时注册,但在 O 连续三个时注册?

我正在创建一个井字棋游戏,当三个 X 连续时,我收到一条消息 X 赢了,但是当三个 O 连续时,没有消息弹出。我似乎无法发现问题所在。你能指点我吗...

回答 1 投票 0

在实际运行值的命令之前如何使用字典中的值

我正在编写井字棋代码,但有点卡住了! 用户输入一个位置,如果输入的位置为空(其位置有一个数字),我想将数字更改为...

回答 2 投票 0

带有极小极大的井字游戏可以在中间行或中间列进行。如何修复它,使其变得无与伦比?

let main = (function() { 让当前玩家; 让游戏结束= false; 让 boardArray = Gameboard(); constdialogElement = document.querySelector('[data-modal]'); const gameContainer = 文档。

回答 1 投票 0

如何为井字棋游戏创建无限滚动网格板?

我是 Unity 新手,我已经在互联网上搜索了大约 5 天,了解如何为 Tic Tac Toe 游戏创建无限棋盘以及获胜组合是什么

回答 1 投票 0

MInimax 函数在下一个 js 中无法正常工作

所以我在下一个js中编写了这段代码。由于某种原因,它无法正常工作。我已经尝试了几乎所有方法,但仍然无法正常工作。我什至尝试使用 alpha beta 修剪,但它仍然是......

回答 1 投票 0

在 Flutter 中创建响应式 Tic Tac Toe 字段布局

我目前正在致力于在 Flutter 中实现响应式 Tic Tac Toe 字段,并且遇到了布局问题。我已经成功地显示了“十字”和“圆圈”符号,b...

回答 1 投票 0

组件 8086 井字棋程序不工作

汇编 8086 检查井字游戏中获胜者的程序仅检查第一行 我正在制作一个终极井字棋,我几乎制作了整个游戏,我映射到数组,我

回答 1 投票 0

X 转两圈后切换到 O

我在井字棋游戏中添加了重新启动功能,但是当 X 获胜并且我点击重新启动时,默认情况下 X 是第一个动作,但需要两轮才能切换到 O。 const board = document.getElementById('...

回答 1 投票 0

超级井字棋的高级极小极大算法仅返回 NONE

这是我对超级井字游戏的极小极大函数的实现: 导入数学 随机导入 从复制导入深复制 def is_terminal_node(板): 返回 board.check_winner() != 0...

回答 1 投票 0

Java 中的 TicTacToe 游戏,X 没有出现

我正在做一项java作业。这是一个跟随视频。添加 isGameFinished 方法后,我的棋盘不再显示 X。 (我一直在运行它,但没有......

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.