Программа про лабиринт, можно ли что то сделать с этим дублированием?

А именно методы MoveRight и MoveDown.

using System;

namespace Mazes
{
public static class EmptyMazeTask
{
    public static void MoveOut(Robot robot, int width, int height)
    {
        MoveRight(robot, width);
        MoveDown(robot, height);
    }

    ***private static void MoveRight(Robot robot, int count)
    {
        for (int i = 0; i < count - 3; i++)
        {
            robot.MoveTo(Direction.Right);
        }
    }
    private static void MoveDown(Robot robot, int count)
    {
        for (int i = 0; i < count - 3; i++)
        {
            robot.MoveTo(Direction.Down);
        }***
    }
}
}

Ответы (1 шт):

Автор решения: aepot

Честно, понимания вообще пока полный 0

А здесь вообще особых знаний не надо, всё просто

private static void MoveRobot(Robot robot, Direction direction, int count)
{
    for (int i = 0; i < count - 3; i++)
    {
        robot.MoveTo(direction);
    }
}

public static void MoveOut(Robot robot, int width, int height)
{
    MoveRobot(robot, Direction.Right, width);
    MoveRobot(robot, Direction.Down, height);
}
→ Ссылка