static void Main(string[] args) { try { Console.Write("Enter the upper-right coordinates of the plateau (Separate them with a space): "); string[] coordinates = Console.ReadLine().Split(' '); Plateau plateau = new Plateau(Convert.ToInt32(coordinates[0]), Convert.ToInt32(coordinates[1])); Console.Write("Enter the rover's position and heading(N-North E-East S-South W-West) (Separate them with a space): "); string[] positions = Console.ReadLine().Split(' '); Position position = new Position(Convert.ToInt32(positions[0]), Convert.ToInt32(positions[1])); DirectionEnum direction = (DirectionEnum)System.Enum.Parse(typeof(DirectionEnum), positions[2].ToUpper()); if (!PlateauManager.CanLand(plateau, position)) { Console.WriteLine("Can Not Land!.."); } else { Console.Write("Enter a series of instructions (M-Move Forward L-Turn Left R-Turn Right): "); string instructions = Console.ReadLine(); Rover rover = new Rover(position, direction); RoverManager.Execute(rover, plateau, instructions.ToUpper()); Console.WriteLine(RoverManager.CurrentPosition(rover)); } } catch (Exception ex) { Console.WriteLine("FAILED!.. " + ex.Message); } Console.ReadLine(); }
public MainWindow() { InitializeComponent(); DataContext = App.fourmilliereVM; plateauManager = PlateauManager.Instance; dt.Tick += Redessine_Tick; dt.Interval = new TimeSpan(0, 0, 0, 0, App.fourmilliereVM.VitesseExecution); }
public static IPlateauManager Case2() { IPlateauManager plateauManager = new PlateauManager { }; IRoverManager roverManager = new RoverManager(); plateauManager.Plateau = new Plateau(); plateauManager.Plateau.CoordinateX = 5; plateauManager.Plateau.CoordinateY = 5; plateauManager.RoverManagerList = new List <IRoverManager>(); roverManager.Rover = new Rover(new RoverPosition { CoordinateX = 3, CoordinateY = 3, Direction = Direction.East }); roverManager.RoverCommandsManager = new RoverCommandsManager(); roverManager.RoverCommandsManager.CommandList = "MMRMMRMRRM"; roverManager.RoverCommandsManager.RoverManager = roverManager; roverManager.Rover.RoverCommands = roverManager.Rover.RoverCommands; roverManager.Rover.Plateau = plateauManager.Plateau; plateauManager.RoverManagerList.Add(roverManager); return(plateauManager); }
public static IPlateauManager Case1() { IPlateauManager plateauManager = new PlateauManager { }; IRoverManager roverManager = new RoverManager(); plateauManager.Plateau = new Plateau(); plateauManager.Plateau.CoordinateX = 5; plateauManager.Plateau.CoordinateY = 5; plateauManager.RoverManagerList = new List <IRoverManager>(); roverManager.Rover = new Rover(new RoverPosition { CoordinateX = 1, CoordinateY = 2, Direction = Direction.North }); roverManager.RoverCommandsManager = new RoverCommandsManager(); roverManager.RoverCommandsManager.CommandList = "LMLMLMLMM"; roverManager.RoverCommandsManager.RoverManager = roverManager; roverManager.Rover.RoverCommands = roverManager.Rover.RoverCommands; roverManager.Rover.Plateau = plateauManager.Plateau; plateauManager.RoverManagerList.Add(roverManager); return(plateauManager); }
public Attitude() { plateauManager = PlateauManager.Instance; }
public Deplacement() { plateauManager = PlateauManager.Instance; }