12345组成三个不重复数java,求大神帮忙!五子棋!只能识别按顺序识别!例如 12345 不能...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
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 不能...相关推荐
- php怎么改成java,求大神帮忙把php的改成java谢谢
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 真心求助 $prize_arr = array( '0' => array('id'=>1,'prize'=>'平板电脑','v'=&g ...
- java主界面设置背景图片_java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改)...
java 窗体设置背景图片问题?(附上登陆界面代码,我想加个背景图片,求大神帮忙改改) 关注:223 答案:4 mip版 解决时间 2021-01-26 22:09 提问者非莪莫属 2021-01 ...
- java 找茬_求大神帮忙找茬,就是改不过来错误
求大神帮忙找茬,就是改不过来错误 package 模拟去掉字符串两端的空格; import java.util.Scanner; class trim1{ String str=null; publi ...
- android重签名闪退,360加固保加固完之后重新签名的包运行闪退,求大神帮忙解答...
加固完之后重新签名的包运行闪退,求大神帮忙解答 错误提示: 07-08 15:51:23.769: E/AndroidRuntime(15012): FATAL EXCEPTION: main 07- ...
- 大神的自动练法师技能,想单独提取,练火星球到 75熟练度,,求大神帮忙提取下。
大神的自动练法师技能,想单独提取,练火星球到 75熟练度,,求大神帮忙提取下. 2014-04-26 00:50:02| 分类: assa 脚本范文列 |字号 订阅 下载LOFTER我的照片书 | d ...
- 秒表c语言程序代码,求大神帮忙写一篇简单的C语言秒表程序, 谢谢。
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include Unsigned char code Tab[10]{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0 ...
- 请输入30名同学的c语言成绩,求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共有30名学...
问题描述: 求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共有30名学 求大神帮忙做这几道结构体的c语言!今天就要交实验报告!急啊急!!!!! (1)一个班级共 ...
- 迅雷极速版服务器未响应,迅雷极速版频繁崩溃,求大神帮忙
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 事情的起因是这样的:本来一直用了好多年,都没有频繁崩溃,只是出现有时在任务进行中时无法添加新任务.但是直到了迅雷极速版被强制升级为x.当时并不知道贴吧里的 ...
- ubuntu14.04扩展屏幕后,打开matlab就死机。求大神帮忙解决!!!万分感谢
ubuntu14.04扩展屏幕后,打开matlab就死机.求大神帮忙解决!!!万分感谢
最新文章
- python采集cpu信息
- 跨进程通信,到底用长连接还是短连接
- iOS 导航栏遮挡视图
- C#中的 具名参数 和 可选参数
- 【数值分析】迭代法解方程:牛顿迭代法、Jacobi迭代法
- Py之Queue:python库之Queue的简介、安装、使用方法之详细攻略
- Linux学习笔记5
- MySQL 字符集支持
- Oracle 11g数据库详细安装步骤图解
- .Net 面试题 汇总(二)
- 华为HCIE RS笔记-21OSPF基本知识
- 通俗理解核方法(kernel function)
- 整流六—PWM整流器无差拍控制 二(重复控制算法)
- 数据分析模型 第九章
- 利用shrinkwrap锁定依赖版本
- HTML2——图像、超链接
- XDOJ1184 - 贪心的小白羊
- 由kobject_create_and_add全面了解kobject
- 怎样查询SCI和EI检索号
- Java 以任意数量空格分割字符串方式
热门文章
- s3c2416开发板 linux,S3C2416移植内核Linux3.1的wm9713声卡过程
- 两阶段最小二乘法原理_R语言代写工具变量与两阶段最小二乘法
- tensorboard ckpt pb 模型的输出节点_算法工程化系列——模型固化
- python获取软件窗口句柄_Python获取浏览器窗口句柄过程解析
- php是静态语言,Thinkphp静态缓存多语言切换
- 蓝牙扫描过程解析_智慧定位系统之蓝牙网关在室内定位技术的原理浅析-新导智能...
- Linux 服务器停止当前运行的程序,实验,代码
- Latex 中插入超链接 插入网址
- Google 修改 Chrome API,防止隐身模式检测
- AI 创业公司 Kyndi 获850万美元融资,帮助公司预测未来