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

📄 computer.java

📁 五子棋游戏的设计与源码下载
💻 JAVA
字号:
//机器永远都执黑棋
public class Computer{
	public int row,line;//记录求得的计算机下棋位置行/列
	public IfWin judge;
    public int power;//权值来设定难度
	public int player1lines[][];//白旗在对应位置的权值
	public int player2lines[][];//黑棋在对应位置的权值
	public  Computer(IfWin judge){
		this.judge=judge;
		player1lines=new int[15][15];
		player2lines=new int[15][15];
		power=2;//,默认为中级难度
	}
	//计算各点对黑白棋子分别权值
	private void count(){
		int i,j,k;
		for(i=0;i<=14;i++)
		 for(j=0;j<=14;j++){
		 	//总分数清零
		 	player1lines[i][j]=0;
		 	player2lines[i][j]=0;
		 	if(judge.chess.point[i][j]==2){
		 		for(k=0;k<572;k++){
		 			if(judge.chess.tableplayer1[i][j][k]){
		 				
		 				switch(judge.ifwin[0][k]){
		 					case 1:
		 					 player1lines[i][j]+=30*power;//形成一连子时,加30分
		 					 break;
		 					case 2:
		 					 player1lines[i][j]+=120*power;//形成二连子时,加120分
		 					 break;
		 					case 3:
		 					 player1lines[i][j]+=300*power;//形成三连子时,加300分
		 					 break;
		 				    case 4:
		 				     player1lines[i][j]+=720*power;//形成四连子时,加720分
		 					 break;
		 				}
		 				switch(judge.ifwin[1][k]){
		 					case 1:
		 					 player2lines[i][j]+=90;//形成一连子时,加30分
		 					 break;
		 					case 2:
		 					 player2lines[i][j]+=360;//形成二连子时,加120分
		 					 break;
		 					case 3:
		 					 player2lines[i][j]+=900;//形成三连子时,加300分
		 					 break;
		 				    case 4:
		 				     player2lines[i][j]+=2160;//形成四连子时,加720分
		 					 break;
		 				}
		 			}
		 		}
		 	}
		 }
	}
	public void location(){
		int lines1max=0,lines2max=0;
		int l1max_i=0,l1max_j=0;
		int l2max_i=0,l2max_j=0;
		count();
		for(int i=0;i<15;i++)
		 for(int j=0;j<15;j++)
		 {
		 	if(judge.chess.point[i][j]==2)
		 	{
		 		if(player2lines[i][j]>=lines2max){
		 			lines2max=player2lines[i][j];
		 			l2max_i=i;l2max_j=j;
		 		}
		 		if(player1lines[i][j]>=lines1max){
		 			lines1max=player1lines[i][j];
		 			l1max_i=i;l1max_j=j;
		 		}
		 	
		    }
	     }
	     if(lines2max>lines1max)
	     {
	     	row=l2max_i;line=l2max_j;
	     }
	     else 
	     {
	     	row=l1max_i;line=l1max_j;
	     }
	   }
}

⌨️ 快捷键说明

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