下载此文档

五子棋人机对战代码资料.docx


文档分类:生活休闲 | 页数:约11页 举报非法文档有奖
1/11
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/11 下载此文档
文档列表 文档介绍

本款游戏最核心的地方就是算法,因为这是整个程序最难的模块。算法的中心思想是:
利用分数代表每个位置的重要程度, 越重要的位置的分数值会越高, 当电脑下棋时会先将电 脑和玩家棋型的分数分别计算一遍,然后选择二者中分数最高的点下子。如果玩家的分数高, 那么代表电脑应该防守,如果电脑的分数高,那么代表电脑应该进攻。
具体的分数值赋值如下:
分数
电脑
玩家
活二
60
50
半活二
40
35
死二
10
10
半死二
10
10
活三
950
700
半活三
900
650
死三
100
100
半死三
100
100
活四
6000
3500
半活四
5000
3000
死四
4000
800
半死四
3600
750
活五
20000
15000
半活五
10000
3300
死五
20000
15000
半死五
10000
3300
解释一下其中的活,半活,死,半死:
活:代表几个子是相连的,中间没有空格,两端都至少有一个空格。
半活:代表几个子不是相连的,几个子中间有一个空格,两端都至少有一个空格。
死:代表几个子是相连的, 中间没有空格,但有一端紧挨着对方的棋子或有一端正好在
棋盘的边界。
半死:代表几个子不是相连的, 几个子中间有一个空格, 而且一端紧挨着对方的棋子或
有一端正好在棋盘的边界。
每个位置的分数的计算方式是各个方向的分数相加, 最后找出电脑棋型和玩家棋型的分
数的最高的位置为电脑的下棋点下棋。
具体的代码如下:
public void qixi ng(){
for ( int i=0;i<17;i++){
for ( int j=0;j<17;j++){
if (qipan [i+1][j+1]==0){ // 说明此处没有棋子
qix in gPC [i][j]=
heiheng(i,j,2)+heishu(i,j,2)+heizuoxie(i,j,2)+heiyouxie(i,j,2);
qixingPlayer [i][j] =
heiheng(i,j,1)+heishu(i,j,1)+heizuoxie(i,j,1)+heiyouxie(i,j,1);
} else {
qixingPC [i][j] = 0; qixingPlayer [i][j] = 0;
} }
// 算出黑子横方向的棋型数值
public int heiheng( int hang, int lie, int num){
int k = 0; // 记录空白处的个数
int count = 1; // 记录可以形成几连
int n = hang+1; // 对应棋盘的行
int m = lie+1; // 对应棋盘的列
qipan [n][m-1]==0)
boolean left = false ; // 判断左边是否有黑子 boolean liveLeft = false ; // 判断左边是活还是死 boolean liveRight = false ; // 判断右边是活还是死
while (( qipan [n][m-1]!=-1)&&( qipan [n][m-1]==num|| ){
if ( qipan [n][m-1]==0&&k<1){ // 第一个空白 if ( qipan [n][m-2]!=num){ liveLeft = true ; break ;
}
k++;
m--;
} else if ( qipan [n][m-1]==num){ // 黑子 left = true ;
m--;
} else { // 第二个空白 liveLeft = true ; break ;
}
}
if (!left){
k = 0;
m = lie+1;
}
while (( qipan [n][m+1]!=-1)&&(
qipan [n][m+1]==num||
qipan [n][m+1]==0)
){
int t = qipan [n][m+1];
if (m==lie){
count++;
m++; continue ;
}
if (t==0&&k<1){ // 第一个空白
if ( qipan [n][m+2]!=num){ liveRight = true ; break ;
}
k++;
m++;
} else if (t==0&&k>0){ // 第二个空白 liveRight = true ; break ;
} e

五子棋人机对战代码资料 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数11
  • 收藏数0 收藏
  • 顶次数0
  • 上传人kunpengchaoyue
  • 文件大小20 KB
  • 时间2021-05-09
最近更新