Member 14644438 Ответов: 1

Как я могу двигаться и работать с лабиринтом, который имеет 2 параметра в haskell?


У меня проблема с домашним заданием. Мне нужно сделать лабиринт с 2 параметрами. Первый параметр - это список строк, которые представляют лабиринт линиями, постепенно идущими сверху вниз. ('*' - стена, '' - поле, 's' - исходное положение). Вначале мы находимся в положении "s".Второй аргумент-это список направлений движения ("d" - вниз, "u" - вверх, "l" - влево, "r" - вправо). Каждая буква означает, что мы перемещаем одну клетку в этом направлении и на новое место ставим символ '.'
maze :: Result -> String -> Result 

sampleInput =
 ["*********",
  "*s*   * *",
  "* * * * *",
  "* * * * *",
  "*   *   *",
  "******* *",
  "        *",
  "*********"]

Я действительно не знаю, что делать. Ничего не работает.
Буду благодарен за любую помощь.

В конце после выполнения всех шагов я должен напечатать фактическую ситуацию.

Что я уже пробовал:

The result should looked like this:
```
Prelude>pp(maze sampleInput "dddrruuurrdddrrddllllll")
*********
*s*...* *
*.*.*.* *
*.*.*.* *
*...*...*
*******.*
 .......*
*********
```

1 Ответов

Рейтинг:
1

RickZeeland

Смотрите учебник Haskell здесь: Haskell Tutorial - Tutorialspoint[^]