[SOLVED] 代写 Java 评估练习 2

30 $

File Name: 代写_Java_评估练习_2.zip
File Size: 244.92 KB

SKU: 3774830258 Category: Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Or Upload Your Assignment Here:


评估练习 2
西蒙·罗杰斯博士和爱丽丝·米勒教授
连接 4
连接4是由两个玩家玩的受欢迎的游戏。它由由X 列的board组成,计数器可以放入其中。丢弃后,它们位于列的底部(如果为空),或位于最后一个计数器的顶部(如果该计数器不为空),则将其放入该列中。每列最多可以包含 Y 计数器。
每个玩家使用不同的颜色的计数器。
游戏的目标是放置你的计数器,使他们使四行。线可以是水平线、垂直线或对角线。例如,在下面描述的棋盘中(X = 7 列编号为 0 到 6,Y = 6 行),如果是红色玩家的回合,将计数器放入列 4 将赢得游戏(创建 4 对角线)。如果轮到黄色玩家,将计数器放入第 1 列将赢得游戏(创建 4 的垂直线)。

图 1
在本评估练习中,您将构建创建连接 4 游戏所需的对象。游戏将由两名玩家玩,每个玩家都通过控制台分配一个角色,通过打印一系列类似这样的字符来显示棋盘的当前状态:

图 2
任务
除了下面列出的类外,还应创建一个包含主方法(以及任务 4 中描述的静态方法)的类,称为ConnectFour.java。应对代码进行注释。

•玩家和计数器[总计: 5 分]
•创建一个类来表示游戏玩家。它应该有一个用于存储玩家名称(String)的属性和一个用于存储其计数器符号的属性
(char),都通过构造函数进行设置。[1 mark]
•创建一个类来表示游戏计数器。它应只有一个属性:对它所属的 player 对象的引用,由构造函数设置。[1 mark]
•两个类都应具有 getter 和toString 方法,以便以下代码将生成输出”Clive,x”[2 mark]:
Player p1 = new Player(”Clive”,”x”);
Counter c = new Counter(p1);
System.out.println(c.getPlayer().toString() + =“,” + c.toString());
•在计数器类中定义一个布尔方法,如果当传递另一个对象时,另一个对象是来自同一玩家的计数器,则返回 true.[1 标记]

•列[总计:7 marks]
•创建表示列的类。它应具有由构造函数设置的 numRows 属性。它应具有具有可以存储计数器对象的 numRows 元素的数组。请注意,游戏中列的顶部将由数组中的位置 0 表示,底部(即第一个计数器将落入的位置)将位于numRows-1位置。[2 marks]
•类应该有一个名为 full 的布尔方法,如果列已满,则返回 true。[1 标记]
•类应具有一个add方法,该方法将计数器对象作为其参数并返回布尔值(真或假)。如果列未满,计数器应添加到正确位置,该方法应返回 true。如果列已满,则该方法应返回 false。如果使用以下代码测试你的Column,则应提供输出“ true,true,true,true,false”: [2 marks]
Column col = new列 (4);
for​(​int​ i=​0​;i<​5​;i++) { Boolean result = col.add(​new​ Counter(p1)); System.out.println(result); }d 为Column类提供一个称为”displayRow”的方法,该方法将行号作为参数。假设行号始终在可接受的范围内。如果该位置有计数器,则该方法应返回一个由计数器字符组成的字符串;如果该位置中没有计数器,则返回包含空格字符的 String。[1 mark]e使用displayRow方法,为列类提供显示方法,该方法在单独的行上显示每行。 如果使用下面的示例测试代码,则应生成以下输出:[1 标记] x o x o x o o列 col =新列 (6);玩家 p1 =新玩家(”克莱夫”,”o”);玩家p2 =新玩家(”沙龙”,”x”);(it i = 0 );i<3;i=) =col.add(新计数器(p1));col.add(新计数器(第2页);新计数器(p2));col.display();•创建一个类来表示一个板。类应[总计: 5 分]:•在其构造函数中获取一些行和列 (按该顺序)。[1 标记]•具有一个布尔添加方法,该方法将引用计数器对象和列号作为参数(按该顺序排列),如果板成功将计数器添加到该列,则返回 true,否则为 false.[1 标记]•具有toString方法,该方法可生成板的 String 表示形式,如图 2 所示(上图)。[1 标记]•您可以使用以下代码测试Board 类,这些代码应提供上图 2 中显示的输出。[1 标记]董事会=新董事会 (6,7)玩家 p1 =新玩家(”克莱夫”,”o”);玩家p2 =新玩家(”沙龙”,”x”); 板.添加(新计数器 (p2),6);板.添加(新计数器 (p1),3);板.添加(新计数器 (p2),4);板.添加(新计数器 (p1),4);板.添加(新计数器 (p2),5);板.add(新计数器 (p1),5);板.添加(新计数器 (p2),6);板.add(新计数器 (p1),5);板.添加(新计数器 (p2),6);板.add(新计数器 (p1),6);•向板类添加一种方法(isFull),如果板已满且 false 为 true,则返回 true。[1 标记]•编写一个静态方法(在ConnectFour 类中),其中两个玩家随机播放(即,他们随机选择列,直到他们找到一个未满的列),直到板已满。 [总计:2 分]•优胜者(这是更先进的,一个良好的通过可以通过跳过这一部分)[总: 3 分]•向板添加一个方法,用于检查玩家是否获胜。提示:首先编写一个方法,从特定位置检查 Z 计数器(Z 通常等于 4)的一条线(水平、垂直或对角线)是否存在。然后,在循环中环绕所有位置。根据需要,可以随意向其他类添加方法。应清楚地注释代码,以描述它的工作原理。 您应该提交什么?•包含 .java 文件的单个 .zip 文件。如果您不确定如何制作 .zip 文件,请告诉我们。请只使用 .zip 而不是 。rar, .7z, 或任何其他存档程序.•这应该在 Moodle 规定的截止日期之前上传到 Moodle。

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[SOLVED] 代写 Java 评估练习 2
30 $