该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

import java.util.Arrays;

import java.util.Scanner;

public class Gobang {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

boolean finish = false;// 有戏是否结束

int flagNum = 1;// 当前下棋者标记

char flagch;// 当前下棋者的棋子

int x = 0;

int y = 0;

// 棋盘初始化

char checkboard[][] = new char[10][10];

for (int i = 0; i < checkboard.length; i++) {

Arrays.fill(checkboard[i], '+');

}

game: while (!finish) {

/* 打印棋盘 */

System.out.println("---------------------");

System.out.println(" 1 2 3 4 6 7 8 9 10");

for (int i = 0; i < checkboard.length; i++) {

System.out.print((char) (i + 65) + " ");

for (int j = 0; j < checkboard[i].length; j++) {

System.out.print(checkboard[i][j] + " ");

}

System.out.println();

}

System.out.println("---------------------");

/* 判断当前下棋者 */

if (flagNum == 1) {

flagch = '*';

System.out.println("请*输入棋子坐标:");

} else {

flagch = 'o';

System.out.println("请o输入棋子坐标:");

}

/* 输入棋子坐标 */

String str = sc.nextLine();

char ch = str.toUpperCase().charAt(0);

x = ch - 65;

y = Integer.parseInt(str.substring(1)) - 1;

/* 判断坐标是否在棋盘内 */

if (x < 0 || x > 9 || y < 0 || y > 9) {

System.out.println("您输入的坐标有误,请重新输入!");

continue;

}

/* 判断坐标上是否有棋子 */

if (checkboard[x][y] == '+') {

checkboard[x][y] = flagch;

} else {

System.out.println("您输入的位置已经有其他棋子,请重新输入!");

continue;

}

/* 判断棋子左侧 */

if (y - 4 >= 0) {

if (checkboard[x][y - 1] == flagch && checkboard[x][y - 2] == flagch && checkboard[x][y - 3] == flagch

&& checkboard[x][y - 4] == flagch) {

finish = true;

break game;

}

}

/* 判断棋子右侧 */

if (y + 4 <= 9) {

if (checkboard[x][y + 1] == flagch && checkboard[x][y + 2] == flagch && checkboard[x][y + 3] == flagch

&& checkboard[x][y + 4] == flagch) {

finish = true;

break game;

}

}

/* 判断棋子上方 */

if (x - 4 >= 0) {

if (checkboard[x - 1][y] == flagch && checkboard[x - 2][y] == flagch && checkboard[x - 3][y] == flagch

&& checkboard[x - 4][y] == flagch) {

finish = true;

break game;

}

}

/* 判断棋子下方 */

if (x + 4 <= 9) {

if (checkboard[x + 1][y] == flagch && checkboard[x + 2][y] == flagch && checkboard[x + 3][y] == flagch

&& checkboard[x + 4][y] == flagch) {

finish = true;

break game;

}

}

/* 判断棋子西北 */

if (x - 4 >= 0 && y - 4 >= 0) {

if (checkboard[x - 1][y - 1] == flagch && checkboard[x - 2][y - 2] == flagch

&& checkboard[x - 3][y - 3] == flagch && checkboard[x - 4][y - 4] == flagch) {

finish = true;

break game;

}

}

/* 判断棋子西南 */

if (x + 4 <= 9 && y - 4 >= 0) {

if (checkboard[x + 1][y - 1] == flagch && checkboard[x + 2][y - 2] == flagch

&& checkboard[x + 3][y - 3] == flagch && checkboard[x + 4][y - 4] == flagch) {

finish = true;

break game;

}

}

/* 判断棋子东北 */

if (x - 4 >= 0 && y + 4 <= 9) {

if (checkboard[x - 1][y + 1] == flagch && checkboard[x - 2][y + 2] == flagch

&& checkboard[x - 3][y + 3] == flagch && checkboard[x - 4][y + 4] == flagch) {

finish = true;

break game;

}

}

/* 判断棋子东南 */

if (x + 4 <= 9 && y + 4 <= 9) {

if (checkboard[x + 1][y + 1] == flagch && checkboard[x + 2][y + 2] == flagch

&& checkboard[x + 3][y + 3] == flagch && checkboard[x + 4][y + 4] == flagch) {

finish = true;

break game;

}

}

flagNum *= -1;

}

System.out.println("---------------------");

System.out.println(" 1 2 3 4 6 7 8 9 10");

for (int i = 0; i < checkboard.length; i++) {

System.out.print((char) (i + 65) + " ");

for (int j = 0; j < checkboard[i].length; j++) {

System.out.print(checkboard[i][j] + " ");

}

System.out.println();

}

System.out.println("---------------------");

if(flagNum==1){

System.out.println("*棋胜利");

}else{

System.out.println("o棋胜利");

}

}

}

只能识别按顺序识别!例如 12345 不能先1235 再4! 求大佬帮忙解决!在线等,急!

12345组成三个不重复数java,求大神帮忙!五子棋!只能识别按顺序识别!例如 12345 不能...相关推荐

  1. php怎么改成java,求大神帮忙把php的改成java谢谢

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 真心求助 $prize_arr = array( '0' => array('id'=>1,'prize'=>'平板电脑','v'=&g ...

  2. java主界面设置背景图片_java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改)...

    java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改) 关注:223  答案:4  mip版 解决时间 2021-01-26 22:09 提问者非莪莫属 2021-01 ...

  3. java 找茬_求大神帮忙找茬,就是改不过来错误

    求大神帮忙找茬,就是改不过来错误 package 模拟去掉字符串两端的空格; import java.util.Scanner; class trim1{ String str=null; publi ...

  4. android重签名闪退,360加固保加固完之后重新签名的包运行闪退,求大神帮忙解答...

    加固完之后重新签名的包运行闪退,求大神帮忙解答 错误提示: 07-08 15:51:23.769: E/AndroidRuntime(15012): FATAL EXCEPTION: main 07- ...

  5. 大神的自动练法师技能,想单独提取,练火星球到 75熟练度,,求大神帮忙提取下。

    大神的自动练法师技能,想单独提取,练火星球到 75熟练度,,求大神帮忙提取下. 2014-04-26 00:50:02| 分类: assa 脚本范文列 |字号 订阅 下载LOFTER我的照片书 | d ...

  6. 秒表c语言程序代码,求大神帮忙写一篇简单的C语言秒表程序, 谢谢。

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include Unsigned char code Tab[10]{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0 ...

  7. 请输入30名同学的c语言成绩,求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共有30名学...

    问题描述: 求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共有30名学 求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共 ...

  8. 迅雷极速版服务器未响应,迅雷极速版频繁崩溃,求大神帮忙

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 事情的起因是这样的:本来一直用了好多年,都没有频繁崩溃,只是出现有时在任务进行中时无法添加新任务.但是直到了迅雷极速版被强制升级为x.当时并不知道贴吧里的 ...

  9. ubuntu14.04扩展屏幕后,打开matlab就死机。求大神帮忙解决!!!万分感谢

    ubuntu14.04扩展屏幕后,打开matlab就死机.求大神帮忙解决!!!万分感谢

最新文章

  1. python采集cpu信息
  2. 跨进程通信,到底用长连接还是短连接
  3. iOS 导航栏遮挡视图
  4. C#中的 具名参数 和 可选参数
  5. 【数值分析】迭代法解方程:牛顿迭代法、Jacobi迭代法
  6. Py之Queue:python库之Queue的简介、安装、使用方法之详细攻略
  7. Linux学习笔记5
  8. MySQL 字符集支持
  9. Oracle 11g数据库详细安装步骤图解
  10. .Net 面试题 汇总(二)
  11. 华为HCIE RS笔记-21OSPF基本知识
  12. 通俗理解核方法(kernel function)
  13. 整流六—PWM整流器无差拍控制 二(重复控制算法)
  14. 数据分析模型 第九章
  15. 利用shrinkwrap锁定依赖版本
  16. HTML2——图像、超链接
  17. XDOJ1184 - 贪心的小白羊
  18. 由kobject_create_and_add全面了解kobject
  19. 怎样查询SCI和EI检索号
  20. Java 以任意数量空格分割字符串方式

热门文章

  1. s3c2416开发板 linux,S3C2416移植内核Linux3.1的wm9713声卡过程
  2. 两阶段最小二乘法原理_R语言代写工具变量与两阶段最小二乘法
  3. tensorboard ckpt pb 模型的输出节点_算法工程化系列——模型固化
  4. python获取软件窗口句柄_Python获取浏览器窗口句柄过程解析
  5. php是静态语言,Thinkphp静态缓存多语言切换
  6. 蓝牙扫描过程解析_智慧定位系统之蓝牙网关在室内定位技术的原理浅析-新导智能...
  7. Linux 服务器停止当前运行的程序,实验,代码
  8. Latex 中插入超链接 插入网址
  9. Google 修改 Chrome API,防止隐身模式检测
  10. AI 创业公司 Kyndi 获850万美元融资,帮助公司预测未来