Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class ChessBoard1
- {
- int[] [] chessboard = new int [9] [9];
- int knightX = 1;
- int knightY = 1;
- int moveCount = 0;
- int moveNum;
- public void playGame(int x, int y)
- {
- knightX = x;
- knightY = y;
- int u = 1;
- moveNum = randomNum();
- //move1
- if(moveNum == 1 && legal(knightX++, knightY-=2))
- {
- move1(knightX, knightY);
- }
- else{
- playGame(knightX, knightY);
- }
- //move2
- if(moveNum == 2 && legal(knightX+=2, knightY--))
- {
- move2(knightX, knightY);
- }
- else{
- playGame(knightX+=2, knightY++);
- }
- //move3
- if(moveNum == 3 && legal(knightX+=2, knightY++))
- {
- move3(knightX, knightY);
- }
- else{
- playGame(knightX, knightY);
- }
- //move4
- if(moveNum == 4 && legal(knightX++, knightY+=2))
- {
- move4(knightX, knightY);
- }
- else{
- playGame(knightX, knightY);
- }
- //move5
- if(moveNum == 5 && legal(knightX--, knightY+=2))
- {
- move5(knightX, knightY);
- }
- else{
- playGame(knightX, knightY);
- }
- //move6
- if(moveNum == 6 && legal(knightX-=2, knightY++))
- {
- move6(knightX, knightY);
- }
- else{
- playGame(knightX, knightY);
- }
- //move7
- if(moveNum == 7 && legal(knightX-=2, knightY++))
- {
- move7(knightX, knightY);
- }
- else{
- playGame(knightX, knightY);
- }
- //move8
- if(moveNum == 8 && legal(knightX--, knightY-=2))
- {
- move8(knightX, knightY);
- }
- else{
- playGame(knightX, knightY);
- }
- // move 1 move 2 move3 //move4 //move5 //move6 //move7 //move8
- 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)))
- {
- for (int row = 0; row < chessboard.length; row++){
- for (int col = 0; col < chessboard[row].length; col++){
- System.out.printf("%4d", chessboard[row][col]);
- }
- System.out.println();
- }
- System.out.println();
- System.out.println();
- System.out.println();
- System.out.println("Game end");
- }
- }
- public void move1(int x, int y)
- {
- knightX++;
- knightY -= 2;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public void move2(int x, int y)
- {
- knightX+= 2;
- knightY--;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public void move3(int x, int y)
- {
- knightX+=2;
- knightY++;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public void move4(int x, int y)
- {
- knightX++;
- knightY += 2;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public void move5(int x, int y)
- {
- knightX--;
- knightY+=2;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public void move6(int x, int y)
- {
- knightX-=2;
- knightY++;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public void move7(int x, int y)
- {
- knightX-=2;
- knightY--;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public void move8(int x, int y)
- {
- knightX--;
- knightY -= 2;
- chessboard[knightY] [knightX] = moveCount;
- moveCount++;
- playGame(knightX, knightY);
- }
- public boolean legal(int x, int y)
- {
- if(x >= 1 && x <= 9 && y >= 1 && y <= 9)
- {
- return true;
- }
- else{
- return false;
- }
- }
- public int randomNum()
- {
- Random rn = new Random();
- int moveset = rn.nextInt(7) + 1;
- return moveset;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement