Tracks
/
F#
F#
/
Exercises
/
Robot Simulator
Robot Simulator

Robot Simulator

Easy

Instructions

Write a robot simulator.

A robot factory's test facility needs a program to verify robot movements.

The robots have three possible movements:

  • turn right
  • turn left
  • advance

Robots are placed on a hypothetical infinite grid, facing a particular direction (north, east, south, or west) at a set of {x,y} coordinates, e.g., {3,8}, with coordinates increasing to the north and east.

The robot then receives a number of instructions, at which point the testing facility verifies the robot's new position, and in which direction it is pointing.

  • The letter-string "RAALAL" means:
    • Turn right
    • Advance twice
    • Turn left
    • Advance once
    • Turn left yet again
  • Say a robot starts at {7, 3} facing north. Then running this stream of instructions should leave it at {9, 4} facing west.

Source

Inspired by an interview question at a famous company.
Edit via GitHub The link opens in a new window or tab
F# Exercism

Ready to start Robot Simulator?

Sign up to Exercism to learn and master F# with 15 concepts, 143 exercises, and real human mentoring, all for free.