HW7.9



import java.util.Scanner;
public class Solution
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
char[][] chessboard = new char[7][7];
int x, y;
for(int i = 0; i < 7; i++)
for(int j = 0; j < 7; j++)
chessboard[i][j] = ' ';
for(int i = 0; i < 7; i += 2)
for(int j = 0; j < 7; j++)
chessboard[i][j] = '-';
for(int i = 1; i < 7; i += 2)
for(int j = 0; j < 7; j += 2)
chessboard[i][j] = '|';
display(chessboard);
while(true)
{
System.out.print("Enter a row(1, 2, or 3) for player X: ");
x = input.nextInt();
System.out.print("Enter a column(1, 2, or 3) for player X: ");
y = input.nextInt();
putChess(chessboard, x, y, 'X');
display(chessboard);
if(judge(chessboard) == true)
{
System.out.println("X player won");
break;
}
System.out.print("Enter a row(1, 2, or 3) for player O: ");
x = input.nextInt();
System.out.print("Enter a column(1, 2, or 3) for player O: ");
y = input.nextInt();
putChess(chessboard, x, y, 'O');
display(chessboard);
if(judge(chessboard) == true)
{
System.out.println("O player won");
break;
}
if(isFull(chessboard))
{
System.out.println("Draw");
break;
}
}
}
public static void display(char[][] array)
{
for(int i = 0; i < 7; i++)
{
for(int j = 0; j < 7; j++)
System.out.print(array[i][j]);
System.out.println();
}
}
public static void putChess(char[][] array, int x, int y, char ch)
{
array[2 * x - 1][2 * y - 1] = ch;
}
public static boolean judge(char[][] array)
{
for(int i = 1; i < 7; i += 2)
{
if(array[i][1] == array[i][3] && array[i][1] == array[i][5] && array[i][1] != ' ')
return true;
if(array[1][i] == array[3][i] && array[1][i] == array[5][i] && array[1][i] != ' ')
return true;
}
if(array[1][1] == array[3][3] && array[1][1] == array[5][5] && array[1][1] != ' ')
return true;
if(array[5][1] == array[3][3] && array[5][1] == array[1][5] && array[5][1] != ' ')
return true;
return false;
}
public static boolean isFull(char[][] array)
{
for(int i = 0; i < array.length; i++)
for(int j = 0; j < array[0].length; j++)
if(array[i][j] == ' ')
return false;
return true;
}
}
HW7.9的更多相关文章
- HW7.18
public class Solution { public static void main(String[] args) { int[][] m = {{1, 2}, {3, 4}, {5, 6} ...
- HW7.17
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...
- HW7.16
import java.util.Arrays; public class Solution { public static void main(String[] args) { int row = ...
- HW7.15
public class Solution { public static void main(String[] args) { double[][] set1 = {{1, 1}, {2, 2}, ...
- HW7.14
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...
- HW7.13
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...
- HW7.12
import java.util.Scanner; public class Solution { public static void main(String[] args) { double[] ...
- HW7.11
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...
- HW7.10
public class Solution { public static void main(String[] args) { int[][] array = new int[3][3]; for( ...
随机推荐
- PHP htmlspecialchars() 函数
定义和用法 htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体. 预定义的字符是: & (和号) 成为 & " (双引号) 成为 " ...
- cf 357C
比赛的时候纯暴力超时了 看了别人的代码 set容器类做的 stl里还是有很多好东西的 /**************************************************** ...
- SaaS 公司如何应对 On-Call 挑战?
Cloud Insight 集监控.管理.计算.协作.可视化于一身,帮助所有 IT 公司,减少在系统监控上的人力和时间成本投入,让运维工作更加高效.简单.本文系国内 ITOM 行业领军企业 OneAP ...
- HDU 1062 Text Reverse
题意 : 给出你一个句子,让你把句子中每个单词的字母顺序颠倒一下输出. 思路 : 用栈即可,就是注意原来在哪儿有空格就要输出空格. //hdu1062 #include <iostream> ...
- 轻量级Java_EE企业应用实战-第5章Hibernate的基本用法-001
1. package org.crazyit.app.domain; import javax.persistence.*; /** * Description: <br/> * ��վ: ...
- 使用intellij idea搭建MAVEN+springmvc+mybatis框架
原文:使用intellij idea搭建MAVEN+springmvc+mybatis框架 1.首先使用idea创建一个maven项目 2.接着配置pom.xml,以下为我的配置 <projec ...
- Spring与Struts2整合
Spring与Struts2为什么要整合呢? 把Action实例交给Spring来管理!! 1.单独测试Struts是否添加成功(jar包和配置文件),先单独测试,不要整合之后再测试,容易出问题 we ...
- 最短路径算法之二——Dijkstra算法
Dijkstra算法 Dijkstra算法主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止. 注意该算法要求图中不存在负权边. 首先我们来定义一个二维数组Edge[MAXN][MAXN]来存储 ...
- Linux的分段和分页机制
1.分段机制 80386的两种工作模式 80386的工作模式包括实地址模式和虚地址模式(保护模式).Linux主要工作在保护模式下. 分段机制 在保护模式下,80386虚地址空间可达16K个段,每 ...
- [译]好程序员的五声“呐喊”
通常编程情况下,会导致软件项目变坏的一些列反应 原文:The five shouts of good programmers 在任何一天,在这个世界上都有软件项目正在失败,这很常见.常见到当软件产品按 ...