Форум программистов, компьютерный форум, киберфорум
Prolog
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Prolog Найти все семьи, имеющие детей (полный код программы на Турбо Пролог) https://www.cyberforum.ru/ prolog/ thread1283649.html
Найти все семьи, имеющие детей. (полный код программы на ТурбоПролог) Добавлено через 47 минут Вот эта задача "Найти все семьи, НЕ ИМЕЮШИЕ детей", а мне надо "Найти все семьи, ИМЕЮЩИЕ детей" Код...
Объяснить саму задачку Prolog
Подскажите, как получили такой результат на прологе? Для предиката p на Прологе описаны правила: p(,L,L) : - !. p(,L2,L):–p(L1,,L).Какое значение получит L после следующего обращения к этому...
База знаний Prolog
Определить наличие вирусов в компьютере по характерным их проявлениям, если таковые наблюдаются. База знаний содержит сведения о характерных проявлениях вирусов.
Prolog В предложении выделить группу самых коротких слов В предложении выделить группу самых коротких слов. Вывести на экран слова, начинающиеся и заканчивающиеся на одну и ту же букву. %trace domains s=string i=integer predicates zam(i,s,s)... https://www.cyberforum.ru/ prolog/ thread1283278.html
Prolog Заменить соседние элементы, если они находятся в отношении родитель-ближайший потомок. Объясните, как работает https://www.cyberforum.ru/ prolog/ thread1283273.html
Помогите объяснить программу. Программу взяла с форума. Необходимо заменить соседние элементы,если они находятся в отношении родитель-ближайший потомок domains tree = empty; tree(integer,tree,tree)...
Объясните программу нахождения эйлерова цикла в неориентированном графе Prolog
Помогите объяснить программу. Программу взяла с форума. Необходимо найти эйлеровый цикл в неориентированном графе DOMAINS s=symbol sl=s* CONSTANTS graf1= graf2= PREDICATES rp(s,s,sl,sl)...
Задача на совмещение имени и фамилии Prolog
В кругу сидят Иванов, Петров, Марков и Карпов. Их имена: Андрей, Сергей, Тимофей и Алексей. Известно, что: 1) Иванов не Алексей и не Андрей; 2) Сергей сидит между Марковым и Тимофеем; 3) Карпов не...
Prolog Подсчет количества элементов в БД Всем привет!) Мне нужно подсчитать количество преподавателей, чей стаж(staj) больше 5 лет. Тоесть нужно просто вывести цифру, помогите пожалуйста. domains fam=string dolj=string... https://www.cyberforum.ru/ prolog/ thread1282623.html
Prolog Задача на Prolog. Посоветуйте что нибудь https://www.cyberforum.ru/ prolog/ thread1282432.html
Написать программу, которая реализует географический справочник. В справочнике содержится следующая информация: название страны и ее площадь. Реализовать вывод всей информации из справочника, поиск...
Prolog Из статической в динамическую бд Помогите сделать данное задание на динамической бд я делал на студенческой версии программы, просьба напишите чтобы работала на той же версии программы Задача: вывести дату рождения всех... https://www.cyberforum.ru/ prolog/ thread1282022.html
0 / 0 / 0
Регистрация: 24.10.2014
Сообщений: 5
0

Найти маршрут перелета из города А в город В, не содержащий города С

24.10.2014, 23:23. Показов 652. Ответов 1
Метки (Все метки)

Нужна помощь с написанием программы про пути в ориентированном графе.
Текст задания: Дан список пар городов, между которыми есть авиарейсы. Найти маршрут перелета из города А в город В, не содержащий города С.
У меня есть один вариант решения, но он не работает. Помогите исправить его так, чтобы он работал, или написать с нуля.

Prolog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
reys(Москва,Париж).  
reys(Москва,Нью_Йорк).  
reys(Москва,Владивосток).
reys(Париж,Лондон).  
reys(Париж,Нью_Йорк).  
reys(Нью_Йорк,Москва).
reys(Нью_Йорк,Сан_Франциско).    
reys(Нью_Йорк,Лондон).
reys(Владивосток,Сан_Франциско).  
reys(Сан_Франциско,Нью_Йорк).
 
path(A,B,[A|T]):-
          path1(A,B,[],T).
path1(A,B,_,[B]):-reys(A,B).
path1(A,B,K,[C|L]):-
          reys(A,C),
          not(member((C,B),K)),
          path1(C,B,[(C,B)|K],L).
 
marshrut(A,B,C,[A|T]):- path(A,B,[A|T]), not(member(C,[A|T])), unic([A|T]).
 
unic([]):-!.
unic([H|T]):-member(H,T),!,fail.
unic([_|T]):-!,unic(T).


Вернуться к обсуждению:
Найти маршрут перелета из города А в город В, не содержащий города С
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2014, 23:23
Готовые ответы и решения:

Для заданной вершины p найти маршруты в другие города, хотя бы один маршрут для каждого города
Добрый день мои дорогие и многоуважаемые форумчане. Прошу вашей помощи: Вот дали задание в...

Найти для 1-го города кратчайшие пути в другие города
Есть некоторое количество городов, некоторые из которых соединены дорогами известной длины. Вся...

Для 1-го города найти кратчайшие маршруты в остальные города
Имеется n городов. Некоторые из них соединены дорогами известной длины. Вся система дорог задана...

Найти кратчайший маршрут, начинающийся в 1-м городе и проходящий через все остальные города
Имеется n городов. Некоторые из них соединены дорогами известной длины. Вся система дорог задана...

__________________
1
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.