⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 judge.java

📁 JAVA 写的五子棋
💻 JAVA
字号:
public class Judge {

	public boolean checklevel(int hang, int lie, int qp[][]) {

		int left, right;
		if (lie - 4 < 0) {
			left = 0;
		} else
			left = lie - 4;

		if (lie > 10) {
			right = 14;
		} else
			right = lie + 4;

		int zuo = 0;
		int you = 0;
		int i;
		for (i = lie; i > left; i--) {
			if (qp[hang][i] == qp[hang][i - 1]&&(qp[hang][i]==1||qp[hang][i]==-1) ){
				zuo++;
				continue;
			} else
				break;
		}

		if (zuo == 4) {
			return true;
		}

		for (i = lie; i < right; i++) {
			if (qp[hang][i] == qp[hang][i + 1]&&(qp[hang][i]==1||qp[hang][i]==-1)) {
				you++;
				continue;
			} else
				break;
		}

		if (you == 4) {
			return true;
		}

		if (you + zuo == 4) {
			return true;
		} else
			return false;

	}

	public boolean checkplumb(int hang, int lie, int qp[][]) {
		int front, back;
		if (hang - 4 < 0) {
			front = 0;
		} else
			front = hang - 4;

		if (hang > 10) {
			back = 14;
		} else
			back = hang + 4;

		int shang = 0;
		int xia = 0;
		int i;
		for (i = hang; i > front; i--) {
			if (qp[i][lie] == qp[i - 1][lie]
					&& (qp[i][lie] == 1 || qp[i][lie] == -1)) {
				shang++;
				continue;
			} else
				break;
		}

		if (shang == 4) {
			return true;
		}

		for (i = hang; i < back; i++) {
			if (qp[i][lie] == qp[i + 1][lie]
					&& (qp[i][lie] == 1 || qp[i][lie] == -1)) {
				xia++;
				continue;
			} else
				break;
		}

		if (xia == 4) {
			return true;
		}

		if (shang + xia == 4) {
			return true;
		}

		else
			return false;

	}

	public boolean checktilted1(int hang, int lie, int qp[][]) {
		int i;
		int zuo = 0;
		int you = 0;
		for (i = 0; i < 4 && hang - i > 0 && lie - i > 0; i++) {
			if (qp[hang - i][lie - i] == qp[hang - i - 1][lie - i - 1]&&(qp[hang - i][lie - i]==1||qp[hang - i][lie - i]==-1)) {
				zuo++;
				continue;
			} else
				break;
		}
		if (zuo == 4) {
			return true;
		}

		for (i = 0; i < 4 && hang + i < 14 && lie + i < 14; i++) {
			if (qp[hang + i][lie + i] == qp[hang + i + 1][lie + i + 1]&&(qp[hang + i][lie + i]==1||qp[hang + i][lie + i]==-1)) {
				you++;
				continue;
			} else
				break;
		}

		if (you == 4) {
			return true;
		}

		if (zuo + you == 4) {
			return true;
		} else
			return false;

	}

	public boolean checktilted2(int hang, int lie, int qp[][]) {
		int i;
		int zuo = 0;
		int you = 0;
		for (i = 0; i < 4 && hang - i > 0 && lie + i < 14; i++) {
			if (qp[hang - i][lie + i] == qp[hang - i - 1][lie + i + 1]
					&& (qp[hang - i][lie + i] == 1 || qp[hang - i][lie + i] == -1)) {
				you++;
				continue;
			} else
				break;
		}

		if (you == 4) {
			return true;
		}
		for (i = 0; i < 4 && hang + i < 14 && lie - i > 0; i++) {
			if (qp[hang + i][lie - i] == qp[hang + i + 1][lie - i - 1]
					&& (qp[hang + i][lie - i]==1||qp[hang + i][lie - i]==-1)) {
				zuo++;
				continue;
			} else
				break;
		}
		if (zuo == 4) {
			return true;
		}

		if (zuo + you == 4) {
			return true;
		} else
			return false;

	}

	public boolean check(int hang, int lie, int qp[][]) {
	
		if (this.checklevel(hang, lie, qp)
				|| this.checkplumb(hang, lie, qp)
				|| this.checktilted1(hang, lie, qp)
				|| this.checktilted2(hang, lie, qp)) {
			return true;
		} else
			return false;
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -