使用Java中的2D阵列连接四个程序

时间:2017-03-22 02:50:23

标签: java arrays multidimensional-array

这些是我需要完成的程序的规格。有人可以帮帮我!!我真的需要完成这个程序!我会得到任何帮助/建议!非常感谢你们!

你必须创建两个名为Board和ConFour的程序 以下标准:

1)正确的介绍

2)准确描述程序功能的评论

3)董事会应该有一个属性;一个二维数组 表示Connect Four游戏板的字符值。一定要确定 包含一个实例化的构造函数(没有参数) 具有6行和7列的2D阵列

4)董事会应至少包含四种方法。第一种方法应该是 是setBoard(),它为板中的每个位置添加一个空字符值。第二种方法setPosition()应该将表示玩家(X或O)的角色放在他们选择的列中。名为checkWinner()的第三个方法应检查电路板,以查看行,列或对角线中是否有四个相同的字符(X或O)。最后,printBoard()应该打印板的内容。

5)ConFour应该代表游戏。让用户输入

开始游戏(他们应该能够在每场比赛后继续比赛)

6)通过打印电路板开始每一圈,然后询问用户 输入他们想要的列(确保替代玩家)。如果用户输入的列号不正确,请重新输入。第一个获得四连胜,一列或两个对角线的玩家都是赢家。

2 个答案:

答案 0 :(得分:1)

以下是我的一点想法:
首先,尝试制作连续检查4 Xs / Os的算法,每个玩家应该为4。您还可以制作4种算法,要求您输入要检查的数字。您需要检查的方向是水平的(检查array[i][x+1],其中i是for循环中的常量,x是您发现的X或O的数字),vertical(检查array[x+1][i]),右 - 对角线(检查array[i+1][x+1])和左对角线(检查array[i-1][x-1]

要打印电路板,只需使用2表示打印数组值的循环。

对于介绍,请使用一堆System.out.println()语句。

进入硬币是一个奇怪的部分。您必须创建高度变量(或高度函数)来存储/检查硬币的高度,然后将其放在另一个硬币的顶部/旁边。然后检查是否有人获胜并继续下一位玩家。不断重复,直到有人获胜。 警告:请勿使用while循环。他们一次不能检查多个布尔值(但你也可以放一堆if(check) { boolean itsalltrue = true; }

嗯,这就是我能想到的一切(我故意没有编写代码,因为我希望你自己编写代码)。享受!

答案 1 :(得分:0)

这是一堂课吗?你真的只是复制并粘贴作业吗?尝试花一些时间查看为您提供的注释,或在此处搜索更具体的问题。以下是代码中类似问题的示例: Simple 2d array java game