文件名称:极小值极大值井字棋
文件大小:7KB
文件格式:TXT
更新时间:2020-12-15 17:49:01
极小值极大值 井字棋
//评估函数 int evaluteMap() { bool flag = true; int i, j; if (isWin() == COM) return MAX_NUM;//如果计算机赢了,返回最大值 if (isWin() == MAN) return -MAX_NUM;//如果计算机输了,返回最小值 //for (i = 0; i < 3; i++) // for (j = 0; j < 3; j++) // if (board[i][j] == 0) // { // flag = false; // break; // } //if (flag) //如果Flag为真 , 棋盘都满了 就退出 // return 0; int count = 0;//该变量用来表示评估函数的值 //将棋盘中的空格填满自己的棋子,既将棋盘数组中的0变为1 for (i = 0; i < 3; i++) for (j = 0; j < 3; j++) { if (board[i][j] == 0) tempBoard[i][j] = COM; else tempBoard[i][j] = board[i][j]; } //电脑一方 //计算每一行中有多少行的棋子连成3个的 for (i = 0; i < 3; i++) count += (tempBoard[i][0] + tempBoard[i][1] + tempBoard[i][2]) / 3; for (i = 0; i < 3; i++)