Something I made for school, but I think you guys would like this.
The interface is not very well programmed, but it works (just barely).
H- Change algorithms (From A* to Dijkstra and back)
C- Clear the board
LClick- Block Tile
RClick- UnBlock Tile
Enter/Return- Start the algorithm
Niches of these algorithms:
-Movement value is mathematically depressing: Going diagonally costs 1.4 units and not sqrt(2).
-You can always move diagonally to an open neighbor.
Remember to extract the file before running.