gpt4 book ai didi

连接四个,检查 C 中的获胜者

转载 作者:行者123 更新时间:2023-11-30 21:11:19 25 4
gpt4 key购买 nike

if ((board[y][x] == 'o' && board[y][x + 1] == 'o' && board[y][x + 2] == 'o' && board[y][x + 3] == 'o')  
|| (board[y][x] == 'o' && board[y][x - 1] == 'o' && board[y][x - 2] == 'o' && board[y][x - 3] == 'o') )
{
printf("you win!\n");
}

这就是我尝试对 char *board[10][10] 执行的操作无论如何简单的方法来解决这个问题?我尝试了许多其他方法,例如 for() 循环和 doWhile() 循环,但似乎没有任何效果。请指教,谢谢

最佳答案

我在这里看到的主要问题是你只在一个方向上检查,所以如果最后一个计数器落入“4”的中间,那么这不会将其视为胜利。

我可能会有一个函数依次遍历每个方向(想想罗盘点),计算每个方向上不间断“线”的长度,并将其存储在临时变量中。对每个方向完成此操作后,将相对两侧的线加在一起,看看是否等于 4。

可能还有一百万种其他方法可以做到这一点!

关于连接四个,检查 C 中的获胜者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24382527/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com