Skip to content

The program implements the generation of a random maze and the algorithm for finding the exit from the maze.

Notifications You must be signed in to change notification settings

IvanWR1995/RobotInMaze

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 

Repository files navigation

RobotInMaze

The program implements the generation of a random maze and the algorithm for finding the exit from the maze.

Описание задачи

Даны робот, задаваемый интерфейсом IRobot, и лабиринт, представляющий из себя набор клеток (Cell), каждая из которых является либо пустой, либо стеной, либо выходом. Размеры и форма лабиринта заранее неизвестны.

Задача: написать реализацию метода поиска выхода из лабиринта. Метод должен либо привести робота в клетку с выходом, либо выбросить исключение, если выход недостижим.

Описание состава файлов приложения

  • SourceData.cs - содержит исходные условия задания и реализация функции поиска пути в лабиринте.
  • IMaze.cs - опредение интерфейса, который определяет сигнатуру необходимых методов-членов для любого лабиринта.
  • IPrint.cs - определение интерфейса, который определяет сигнатуру методов-членов для вывода любого лабиринта.
  • Maze.cs - определяет абстрактный класс Maze, реализующий базовое поведение для интерфейсов IMaze и IPrint, а также определяющий общие члены для лабиринтов.
  • MazeDefault.cs - содержит определение класса, для генерации изначально заданного лабиринта унаследованного от Maze.
  • MazeEuler.cs - содержит определение класса, который генерирует лабиринт по алгоритму Эйлера. Класс унаследован от Maze.
  • Robot.cs - содержит определение класса робота, который реализует интерфейс IRobot.
  • SimpleMazeFactory.cs - содержит реализацию простой фабрики лабиринтов.

About

The program implements the generation of a random maze and the algorithm for finding the exit from the maze.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages