enum piece {white_pawn, white_rook, white_knight, white_bishop, white_queen, white_king, black_pawn, black_rook, black_knight, black_bishop, black_queen, black_king};
void newGame(); // Initialize the board with pieces in their starting locations bool isLegal(int from, int to); // True if it is legal to move the piece at "from" to location "to". void move(int from, int to); // Execute move if legal void promote(int from, piece promoteTo); // Move a pawn to the 8th rank and promote void resign() // Player resigns bool whiteIsInCheck(); // True if white is in check bool blackIsInCheck(); // True if black is in check bool whiteIsCheckmated(); // True if white king is checkmated bool blackIsCheckmated(); // True if black king is checkmated bool isStalemate(); // True if player has no legal move on his turn bool isDraw(); // True if game is a draw piece getPiece(int location); // Return the piece at a location bool whitesTurn(); // Return true if it is white's turn int moveNumber(); // Number of moves made in the game And if you want the computer to be able to play against a human: void makeComputersMove(); // Selects a move and calls move (or promote) int score(int from, int to, int depth); // Called by makeComputersMove to score a move looking ahead to the requested depth I could be missing something. Anything else that would be necessary or useful? Don On Sep 7, 2:17 am, guna sekaran <vgun...@gmail.com> wrote: > Funtions that should be used to implemnt chess board movements which > covers all concepts of cpp( no need of implementation. Just names of > methods enough) -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.