Skip to content

Instantly share code, notes, and snippets.

@mtimkovich
Last active October 13, 2015 17:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mtimkovich/4234421 to your computer and use it in GitHub Desktop.
Save mtimkovich/4234421 to your computer and use it in GitHub Desktop.
Chess960 initial position generator in Java
public class Chess960 {
public static void main(String[] args) {
char[] board = new char[8];
for (int i = 0; i < 2; i++) {
int r = (int) (Math.random() * 4) * 2;
if (i == 1) {
r++;
}
board[r] = 'B';
}
char[] queenKnights = {'Q', 'N', 'N'};
for (int i = 0; i < queenKnights.length; i++) {
int index = (int) (Math.random() * (6 - i));
while (board[index] != 0) {
index++;
}
board[index] = queenKnights[i];
}
char[] kingRooks = {'R', 'K', 'R'};
int index = 0;
for (int i = 0; i < kingRooks.length; i++) {
while (board[index] != 0) {
index++;
}
board[index] = kingRooks[i];
index++;
}
for (int i = 0; i < board.length; i++) {
System.out.print(board[i] + " ");
}
System.out.println();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment