大神们 急求基于eclipse的java小游戏程序的源码,程序不要多复杂啊。像坦克大战,五子棋,扫雷之类的谢谢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大神们 急求基于eclipse的java小游戏程序的源码,程序不要多复杂啊。像坦克大战,五子棋,扫雷之类的谢谢相关的知识,希望对你有一定的参考价值。


import java.util.Scanner;


public class Wuziqi

/**

* 棋盘

*/

private final int[][] qipan;

/**

* 步数

*/

private int bushu;

/**

* 构造方法,设置棋盘规格

* @param x

* @param y

*/

public Wuziqi(int x, int y)

if (x < 1 || y < 1)

System.out.println("棋盘规格应不小于1,使用默认规格");

qipan = new int[9][9];

else

qipan = new int[y][x];

/**

* 游戏开始

*/

public void play()

int[] zuobiao = null;

//如果游戏没有结束

while (!end(zuobiao))

//落子,并取得坐标

zuobiao = luozi();

//输出棋盘

out();

/**

* 输出棋盘和棋子

*/

private void out()

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

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

if (qipan[i][j] == 0)

System.out.print("  +");

else if (qipan[i][j] == -1)

System.out.print("  白");

else if (qipan[i][j] == 1)

System.out.print("  黑");

System.out.println(" ");

/**

* 落子

*/

private int[] luozi()

int[] zuobiao;

bushu++;

if (bushu % 2 == 1)

System.out.println("请黑方落子");

zuobiao = input();

qipan[zuobiao[1]][zuobiao[0]] = 1;

else

System.out.println("请白方落子");

zuobiao = input();

qipan[zuobiao[1]][zuobiao[0]] = -1;

return zuobiao;

/**

* 输入坐标

* @return

*/

private int[] input()

Scanner sc = new Scanner(System.in);

System.out.println("请输入x轴坐标");

String x = sc.next();

System.out.println("请输入y轴坐标");

String y = sc.next();

//如果没有通过验证,则再次执行input(),递归算法

if (!validate(x, y))

return input();

int int_x = Integer.valueOf(x);

int int_y = Integer.valueOf(y);

return new int[] int_x, int_y;

/**

* 校验数据

* @param x

* @param y

* @return

*/

private boolean validate(String x, String y)

Integer int_x = null;

Integer int_y = null;

//异常处理的方式判断字符串是否是一个整数

try

int_x = Integer.valueOf(x);

int_y = Integer.valueOf(y);

catch (NumberFormatException e)

System.out.println("坐标格式错误,坐标应为整数");

return false;

if (int_x < 0 || int_y < 0 || int_x >= qipan[0].length || int_y >= qipan.length)

System.out.println("坐标越界");

return false;

if (qipan[int_y][int_x] == 0)

return true;

else

System.out.println("坐标上已有棋子");

return false;

;

/**

* 结束条件

* @return

*/

private boolean end(int[] zuobiao)

if (zuobiao == null)

return false;

//计数器

//表示棋盘上经过最近落子坐标的4条线上的连续(和最近落子颜色相同的)棋子的个数

//如果某条线上连续的棋子大于等于4(加上最近落子本身,大于等于5),则游戏结束,符合五子棋规则

int[] jieguo = new int[4];

int x = zuobiao[0];

int y = zuobiao[1];

//定义八个方向

final int[][] fangxiang = -1, 0, -1, 1, 0, 1, 1, 1, 1, 0, 1, -1, 0, -1, -1, -1;

//最近落子的坐标上的棋子颜色

int number = qipan[y][x];

//搜索最近落子坐标为中心最远4的距离

for (int i = 1; i <= 4; i++)

//每次搜索不同的距离都搜索八个方向

for (int j = 0; j < fangxiang.length; j++)

//约定如果某个方向为null时,不再搜索这个方向。关键字continue是跳过本次(一次)循环的意思

if (fangxiang[j] == null)

continue;

int mubiao_x = x + i * fangxiang[j][0];

int mubiao_y = y + i * fangxiang[j][1];

//如果搜索坐标相对于棋盘越界,则不再搜索这个方向

if (mubiao_y >= qipan.length || mubiao_y < 0 || mubiao_x >= qipan[0].length || mubiao_x < 0)

fangxiang[j] = null;

continue;

//如果最近落子坐标上的值等于目标坐标上的值(颜色相同),则计数器上某条线加1

//否则认为这个方向没有棋子或有别的颜色的棋子,不再搜索这个方向

if (number == qipan[mubiao_y][mubiao_x])

jieguo[j % 4]++;

else

fangxiang[j] = null;

//查看计数器上是否有比3更大的数(查看是否有一方胜出)

for (int i : jieguo)

if (i > 3)

System.out.println("游戏结束");

if (bushu % 2 == 1)

System.out.println("黑方胜");

else

System.out.println("白方胜");

return true;

//没有胜出者的情况下,查看棋盘上是否还有空位置,如果有,则游戏可以继续

for (int[] arr : qipan)

for (int i : arr)

if (i == 0)

return false;

//如果没有空位置,则平局

System.out.println("游戏结束,平局");

return true;


参考技术A 这还不复杂啊。百度搜一下试试,

ArcEngine10.1 的runtime在哪里有呢?或者基于它的程序怎么打包部署?急求

现在自己的电脑上(vs2010+ArcGIS10.1+ArcEngine10.1)开发出了小程序,想要打包并安装到别的电脑。据说engine runtime是必须的,但是找不到下载。AE程序的打包我也第一次做,求大神帮忙!

参考技术A

  是这样的,arcgis9.3有runtime,但10就没有了。在ArcGIS Engine10.0以后,许可方式发生了一定的变化,ArcGis10有一个新的要求---runtime绑定。就是在任何ArcObjects代码(包括许可初始化代码)被执行前,指定相称的ArcGIS产品---ArcGIS Desktop或者ArcGIS Engine应用程序。可以在VisualStudio IDE中将该程序集添加为项目引用。

//添加引用ESRI.ArcGIS.Version
ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);



本回答被提问者和网友采纳
参考技术B 下载engine runtime安装,.netframework相应版本安装即可追问

请问哪里有engine runtime10.1 ?

追答

我这有

以上是关于大神们 急求基于eclipse的java小游戏程序的源码,程序不要多复杂啊。像坦克大战,五子棋,扫雷之类的谢谢的主要内容,如果未能解决你的问题,请参考以下文章

急求PYTHON的大作业!!!可以是小游戏,也可以是有实际应用的程序。请大神具体描述一下程序,谢谢!

求大神帮忙编写一个Java程序显示指定目录中所有的文件和目录,包括文件大小以及类型信息。急求啊!!!

急求51单片机控制舵机C语言程序,舵机可以根据设定旋转任意角度!急求啊,大神帮帮忙!非常感谢!

java代码,空字符或者空值在控制台输入,下面的程序要输入啥才会显示ERRORCODE=02??急求大神解答!

如何在 Eclipse 中使用基于 Java 的程序插入按钮

急求大神教如何在Python里编写日历