Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- abstract class Command
- {
- public virtual void Execute();
- }
- abstract class MarsRoverCommand : Command
- {
- protected MarsRover Rover { get; private set; }
- public MarsRoverCommand(MarsRover rover)
- {
- this.Rover = rover;
- }
- }
- class BreakCommand : MarsRoverCommand
- {
- public BreakCommand(MarsRover rover)
- : base(rover)
- {
- }
- public override void Execute()
- {
- Rover.Rotate(-5.0);
- }
- }
- class TurnLeftCommand : MarsRoverCommand
- {
- public TurnLeftCommand(MarsRover rover)
- : base(rover)
- {
- }
- public override void Execute()
- {
- Rover.Rotate(-5.0);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement