Advertisement
Guest User

Untitled

a guest
Feb 11th, 2016
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.03 KB | None | 0 0
  1. import java.util.*;
  2. public class ChessBoard1
  3. {
  4. int[] [] chessboard = new int [9] [9];
  5. int knightX = 1;
  6. int knightY = 1;
  7. int moveCount = 0;
  8. int moveNum;
  9. public void playGame(int x, int y)
  10. {
  11. knightX = x;
  12. knightY = y;
  13.  
  14. int u = 1;
  15.  
  16.  
  17. moveNum = randomNum();
  18.  
  19. //move1
  20. if(moveNum == 1 && legal(knightX++, knightY-=2))
  21. {
  22. move1(knightX, knightY);
  23. }
  24. else{
  25. playGame(knightX, knightY);
  26. }
  27.  
  28. //move2
  29. if(moveNum == 2 && legal(knightX+=2, knightY--))
  30. {
  31. move2(knightX, knightY);
  32. }
  33. else{
  34. playGame(knightX+=2, knightY++);
  35. }
  36.  
  37. //move3
  38. if(moveNum == 3 && legal(knightX+=2, knightY++))
  39. {
  40. move3(knightX, knightY);
  41. }
  42. else{
  43. playGame(knightX, knightY);
  44. }
  45.  
  46. //move4
  47. if(moveNum == 4 && legal(knightX++, knightY+=2))
  48. {
  49. move4(knightX, knightY);
  50. }
  51. else{
  52. playGame(knightX, knightY);
  53. }
  54.  
  55. //move5
  56. if(moveNum == 5 && legal(knightX--, knightY+=2))
  57. {
  58. move5(knightX, knightY);
  59. }
  60. else{
  61. playGame(knightX, knightY);
  62. }
  63.  
  64. //move6
  65. if(moveNum == 6 && legal(knightX-=2, knightY++))
  66. {
  67. move6(knightX, knightY);
  68. }
  69. else{
  70. playGame(knightX, knightY);
  71. }
  72.  
  73. //move7
  74. if(moveNum == 7 && legal(knightX-=2, knightY++))
  75. {
  76. move7(knightX, knightY);
  77. }
  78. else{
  79. playGame(knightX, knightY);
  80. }
  81.  
  82. //move8
  83. if(moveNum == 8 && legal(knightX--, knightY-=2))
  84. {
  85. move8(knightX, knightY);
  86. }
  87. else{
  88. playGame(knightX, knightY);
  89. }
  90. // move 1 move 2 move3 //move4 //move5 //move6 //move7 //move8
  91. if(!(legal(knightX++, knightY-=2) && legal(knightX+=2, knightY--) && legal(knightX+=2, knightY++) && legal(knightX++, knightY+=2) && legal(knightX--, knightY+=2) && legal(knightX-=2, knightY++) && legal(knightX-=2, knightY--) && legal(knightX--, knightY-=2)))
  92. {
  93. for (int row = 0; row < chessboard.length; row++){
  94. for (int col = 0; col < chessboard[row].length; col++){
  95. System.out.printf("%4d", chessboard[row][col]);
  96. }
  97. System.out.println();
  98. }
  99. System.out.println();
  100. System.out.println();
  101. System.out.println();
  102. System.out.println("Game end");
  103. }
  104. }
  105.  
  106. public void move1(int x, int y)
  107. {
  108.  
  109. knightX++;
  110. knightY -= 2;
  111. chessboard[knightY] [knightX] = moveCount;
  112. moveCount++;
  113. playGame(knightX, knightY);
  114. }
  115.  
  116. public void move2(int x, int y)
  117. {
  118.  
  119. knightX+= 2;
  120. knightY--;
  121. chessboard[knightY] [knightX] = moveCount;
  122. moveCount++;
  123. playGame(knightX, knightY);
  124. }
  125.  
  126. public void move3(int x, int y)
  127. {
  128.  
  129. knightX+=2;
  130. knightY++;
  131. chessboard[knightY] [knightX] = moveCount;
  132. moveCount++;
  133. playGame(knightX, knightY);
  134. }
  135.  
  136. public void move4(int x, int y)
  137. {
  138.  
  139. knightX++;
  140. knightY += 2;
  141. chessboard[knightY] [knightX] = moveCount;
  142. moveCount++;
  143. playGame(knightX, knightY);
  144. }
  145.  
  146. public void move5(int x, int y)
  147. {
  148.  
  149. knightX--;
  150. knightY+=2;
  151. chessboard[knightY] [knightX] = moveCount;
  152. moveCount++;
  153. playGame(knightX, knightY);
  154. }
  155.  
  156. public void move6(int x, int y)
  157. {
  158.  
  159. knightX-=2;
  160. knightY++;
  161. chessboard[knightY] [knightX] = moveCount;
  162. moveCount++;
  163. playGame(knightX, knightY);
  164. }
  165.  
  166. public void move7(int x, int y)
  167. {
  168.  
  169. knightX-=2;
  170. knightY--;
  171. chessboard[knightY] [knightX] = moveCount;
  172. moveCount++;
  173. playGame(knightX, knightY);
  174. }
  175.  
  176. public void move8(int x, int y)
  177. {
  178.  
  179. knightX--;
  180. knightY -= 2;
  181. chessboard[knightY] [knightX] = moveCount;
  182. moveCount++;
  183. playGame(knightX, knightY);
  184. }
  185.  
  186. public boolean legal(int x, int y)
  187. {
  188. if(x >= 1 && x <= 9 && y >= 1 && y <= 9)
  189. {
  190. return true;
  191. }
  192. else{
  193. return false;
  194. }
  195.  
  196. }
  197.  
  198. public int randomNum()
  199. {
  200. Random rn = new Random();
  201. int moveset = rn.nextInt(7) + 1;
  202. return moveset;
  203. }
  204.  
  205. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement