ВУЗ:
Составители:
132
вает перебор всех возможных ребер из каждой вершины, распознавание тупиковых ситуаций,
возврат к тем вершинам, из которых выходят еще не опробованные пути, и пр.
Для нахождения пути по которому надо двигаться, чтобы нарисовать домик, начиная с
четвертой вершины, следует ввести такой запрос:
?- найти_ путь (4,[]).
Ответ [з,ж,в,а,б,д,г,е]
Если мы введем запрос:
?- найти путь (1, []),
Ответом будет: Нет, так как такого пути не существует.
Как видим, возможность решения задачи зависит от того, с какой именно вершины мы
начинаем поиск. Можно воспользоваться тем, что в Прологе разрешается иногда определять не все
аргументы запроса, чтобы найти все множество вершин, которые могут служить начальными
вершинами путей обхода графа. В ответ на запрос:
?- найти_ путь (Начальная, [])
мы получим все множество возможных путей обхода и номера начальных вершин (для нашего
домика такими вершинами будут четвертая и пятая).
К этому же классу задам принадлежит и известная задача о кенигсбергских мостах, впервые
решенная великим математиком Эйлером. Постановка этой задачи такова:
Пройти по всем семи мостам г. Кенигсберга, не проходя дважды по одному и тому же мосту
(рис- 8,2)
вает перебор всех возможных ребер из каждой вершины, распознавание тупиковых ситуаций,
возврат к тем вершинам, из которых выходят еще не опробованные пути, и пр.
Для нахождения пути по которому надо двигаться, чтобы нарисовать домик, начиная с
четвертой вершины, следует ввести такой запрос:
?- найти_ путь (4,[]).
Ответ [з,ж,в,а,б,д,г,е]
Если мы введем запрос:
?- найти путь (1, []),
Ответом будет: Нет, так как такого пути не существует.
Как видим, возможность решения задачи зависит от того, с какой именно вершины мы
начинаем поиск. Можно воспользоваться тем, что в Прологе разрешается иногда определять не все
аргументы запроса, чтобы найти все множество вершин, которые могут служить начальными
вершинами путей обхода графа. В ответ на запрос:
?- найти_ путь (Начальная, [])
мы получим все множество возможных путей обхода и номера начальных вершин (для нашего
домика такими вершинами будут четвертая и пятая).
К этому же классу задам принадлежит и известная задача о кенигсбергских мостах, впервые
решенная великим математиком Эйлером. Постановка этой задачи такова:
Пройти по всем семи мостам г. Кенигсберга, не проходя дважды по одному и тому же мосту
(рис- 8,2)
132
Страницы
- « первая
- ‹ предыдущая
- …
- 130
- 131
- 132
- 133
- 134
- …
- следующая ›
- последняя »
