|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.11.2019, 10:20 | #1 |
Регистрация: 14.02.2016
Сообщений: 9
|
Решение задач с графами в Visual Prolog
Имеется код для выполнения задачи нахождения пути из одного города в другой по графу. Необходимо решить задачу:
1. Найдите все пути от одного пункта до другого, которые содержат не более заданного числа пересадок. Файл main.pro: [CODE]% Copyright implement main open core class facts - graph arc : (string, string, unsigned). class predicates depthFirst : (string, string, string* [out], unsigned [out]) nondeterm. path : (string, string, string*, string* [out], unsigned, unsigned [out]) nondeterm. edge : (string, string [out], unsigned [out]) nondeterm. clauses edge(X, Y, Dist) :- arc(X, Y, Dist) or arc(Y, X, Dist). depthFirst(Start, Goal, list::reverse(Path), Dist) :- path(Start, Goal, [Start], Path, 0, Dist). path(Goal, Goal, Path, Path, Dist, Dist) :- !. path(V, Goal, CurrPath, Path, CurrDist, Dist) :- edge(V, NextV, D), not(NextV in CurrPath), path(NextV, Goal, [NextV | CurrPath], Path, CurrDist + D, Dist). run() :- CP = commandLineParser::new(), CP:acceptEmpty := true, CP:addOption_help("-help"), % define command line options here if ErrorMessage = isSome(CParse()) then stdio::write(ErrorMessage) else % place your own code here file::consult("graph.txt", graph), depthFirst("Москва", "Псков", Path, D), stdIO::write(string::concatWithDeli miter(Path, " -> "), " : ", D), stdIO::write("\n"), fail or _ = stdIO::readLine() end if. end implement main goal console::run(main::run).[CODE] Файл с путями: |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Написать решение предложенной задачи на Visual Prolog | katyawapka | Помощь студентам | 0 | 13.06.2015 12:19 |
решение 2х задач Visual Basic | ksuuufffka | Помощь студентам | 1 | 23.12.2012 18:21 |
Затруднения с графами. Заказать решение | Dinara0505 | Помощь студентам | 1 | 14.05.2011 18:02 |
Мне нужно в программе Visual Basic прописать решение задач!!!!!!!!!!!!!!! | Женька Шнель | Помощь студентам | 2 | 18.04.2011 14:29 |