Mars Rover Kata in Delphi (see http://amirrajan.net/Blog/code-katas-mars-rover)
Component Pascal
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
MarsRover.groupproj
MarsRoverKata.dpr
MarsRoverKata.dproj
README.md
TestMarsRover.pas
XmlTestRunner.pas
autotest.ini
autotest.xml
uMarsRover.pas

README.md

This is the Mars Rover Kata for Delphi

Original posting: http://dallashackclub.com/rover

Additional information: http://amirrajan.net/Blog/code-katas-mars-rover

  • Develop an api that moves a rover around on a grid.
  • You are given the initial starting point (x,y) of a rover and the direction (N,S,E,W) it is facing.
  • The rover receives a character array of commands.
  • Implement commands that move the rover forward/backward (f,b).
  • Implement commands that turn the rover left/right (l,r).
  • Implement wrapping from one edge of the grid to another. (planets are spheres after all)
  • Implement obstacle detection before each move to a new square. If a given sequence of commands encounters an obstacle, the rover moves up to the last possible point and reports the obstacle.
  • Example: The rover is on a 100x100 grid at location (0, 0) and facing NORTH. The rover is given the commands "ffrff" and should end up at (2, 2)

Tips: use multiple classes and TDD