Chess Pieces

Published by Matt in

Create a function that takes the name of a chess piece, its position and a target position. The function should return true if the piece can move to the target and false if it can't.

The possible inputs are "Pawn", "Knight", "Bishop", "Rook", "Queen" and "King".

Examples

canMove("Rook", "A8", "H8") ➞ true

canMove("Bishop", "A7", "G1") ➞ true

canMove("Queen", "C4", "D6") ➞ false

Notes

  • Do not include pawn capture moves and en passant.
  • Do not include castling.
  • Remember to include pawns' two-square move on the second rank!
  • Look for patterns in the movement of the pieces.
Watch a quick demo on how Edabit works.