久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 象棋AI模塊調試用代碼 [打印本頁]

作者: liuyy    時間: 2015-1-11 19:58
標題: 象棋AI模塊調試用代碼
  1. //文件名 xq_main.java
  2. import xq.*;
  3. //聲明一個類
  4. public class xq_main {
  5. //聲明一個方法  
  6. public static void main(String[] args){
  7. //程序的入口
  8. //初始化一個棋盤
  9. int qipan[][]=new int[][]{{2,3,6,5,1,5,6,3,2},{0,0,0,0,0,0,0,0,0},{0,4,0,0,0,0,0,4,0},{7,0,7,0,7,0,7,0,7},{0,0,0,0,0,0,0,0,0},{0,0,0,0,0,0,0,0,0},{14,0,14,0,14,0,14,0,14},{0,11,0,0,0,0,0,11,0},{0,0,0,0,0,0,0,0,0},{9,10,13,12,8,12,13,10,9}};
  10. int x,y;
  11. for(y=0;y<=9;y++)
  12. {
  13. for(x=0;x<=8;x++)
  14. {
  15. switch (qipan[y][x]){
  16. case 0:
  17.          System.out.print("      ");//空格
  18.        break;
  19.      case 1:
  20.          System.out.print("黑帥  ");//黑帥
  21.        break;
  22.      case 2:
  23.          System.out.print("黑車  ");//黑車
  24.           break;
  25.      case 3:
  26.        System.out.print("黑馬  ");//黑馬
  27.         break;
  28.      case 4:
  29.        System.out.print("黑炮  ");//黑炮
  30.         break;
  31.      case 5:
  32.        System.out.print("黑士  ");//黑士
  33.         break;
  34.      case 6:
  35.        System.out.print("黑象  ");//黑象
  36.         break;
  37.      case 7:
  38.        System.out.print("黑兵  ");//黑兵
  39.         break;
  40.      case 8:
  41.        System.out.print("紅將  ");//紅將
  42.         break;
  43.      case 9:
  44.        System.out.print("紅車  ");//紅車                                                                                                                                            
  45.         break;
  46.      case 10:
  47.        System.out.print("紅馬  ");//紅馬
  48.         break;
  49.      case 11:
  50.        System.out.print("紅砲  ");//紅砲
  51.         break;
  52.      case 12:
  53.        System.out.print("紅仕  ");//紅仕
  54.         break;
  55.      case 13:
  56.        System.out.print("紅相  ");//紅相
  57.         break;
  58.      case 14:
  59.        System.out.print("紅卒  ");//紅卒
  60.         break;
  61. }
  62. }
  63. if(y==4) System.out.print("\n\n\n");else System.out.print("\n\n");
  64. }
  65. GuiZe AI=new GuiZe();
  66. //調試AI棋步生成情況
  67. for(int z=0;z<30;z++)
  68. {
  69. ChessMove qibu=AI.searchAGoodMove(qipan);
  70. System.out.print("AI生成一個當前最佳棋步:\n");//空格
  71. switch (qibu.ChessID){
  72. case 0:
  73.          System.out.print("      ");//空格
  74.        break;
  75.      case 1:
  76.          System.out.print("黑帥  ");//黑帥
  77.        break;
  78.      case 2:
  79.          System.out.print("黑車  ");//黑車
  80.           break;
  81.      case 3:
  82.        System.out.print("黑馬  ");//黑馬
  83.         break;
  84.      case 4:
  85.        System.out.print("黑炮  ");//黑炮
  86.         break;
  87.      case 5:
  88.        System.out.print("黑士  ");//黑士
  89.         break;
  90.      case 6:
  91.        System.out.print("黑象  ");//黑象
  92.         break;
  93.      case 7:
  94.        System.out.print("黑兵  ");//黑兵
  95.         break;
  96.      case 8:
  97.        System.out.print("紅將  ");//紅將
  98.         break;
  99.      case 9:
  100.        System.out.print("紅車  ");//紅車                                                                                                                                            
  101.         break;
  102.      case 10:
  103.        System.out.print("紅馬  ");//紅馬
  104.         break;
  105.      case 11:
  106.        System.out.print("紅砲  ");//紅砲
  107.         break;
  108.      case 12:
  109.        System.out.print("紅仕  ");//紅仕
  110.         break;
  111.      case 13:
  112.        System.out.print("紅相  ");//紅相
  113.         break;
  114.      case 14:
  115.        System.out.print("紅卒  ");//紅卒
  116.         break;
  117. }
  118. System.out.print("現在位置:Y "+qibu.fromY+"  X "+qibu.fromX+" 移動到:Y "+qibu.toY+" X "+qibu.toX+"\n");  
  119. }
  120.    
  121.    
  122. }
  123. }

  124. AI主模塊會用到這個類要放到同一個包里
  125. package xq;
  126. /**
  127. * 該類為棋子的一個走法
  128. * 包含是什么棋子
  129. * 起始點的位置
  130. * 目標點的位置
  131. * 以及估值時所用到的score
  132. */
  133. public class ChessMove {
  134.   public int ChessID;//表明是什么棋子
  135.   public int fromX;//起始的坐標
  136.   public int fromY;
  137.   public int toX;//目的地的坐標
  138.   public int toY;
  139.   public int score;//值,估值時會用到
  140. public ChessMove(int ChessID, int fromX,int fromY,int toX,int toY,int score){//構造器
  141.   this.ChessID = ChessID;//棋子的類型
  142.   this.toY = toY;//棋子的目標點y坐標
  143.   this.fromX = fromX;//棋子的起始坐標
  144.   this.fromY = fromY;
  145.   this.toX = toX;//棋子的目標點x坐標
  146.   this.score = score;
  147. }
  148. }
復制代碼







歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲毛片av| 亚洲激情中文字幕 | 精品国产成人 | 97久久精品人人澡人人爽 | 亚洲一区在线观看视频 | 中文字幕在线观看亚洲 | 国产乱人伦 | 91av在线看| 亚洲精品黄色 | 你懂的在线网站 | 日本黄色片视频 | 色爽av | 日日日日干 | 日本精品视频在线 | 日韩在线免费播放 | 中国黄色一级片 | 亚洲视频二区 | 中文字幕日韩视频 | 久久精品小视频 | 久久伊人久久 | 一区二区三区免费观看 | 天天拍天天射 | 中文字幕免费av | 国产精品麻豆视频 | www.第四色| 国产成人精品一区二区 | 一级片aa | 中文文字幕文字幕高清 | 伊人精品在线 | 亚洲天堂免费视频 | 成人国产一区 | 亚洲福利视频一区 | 国产一级黄色录像 | 国产欧美日韩综合 | 欧美一区二区在线播放 | 91精品久久久久 | 黄色大片av| 欧美日韩中文在线 | 在线免费看a | 男女操网站 | 日韩一区二区三区在线 |