Форум программистов, компьютерный форум, киберфорум
Наши страницы
Prolog
Войти
Регистрация
Восстановить пароль
 
Wildklas
0 / 0 / 0
Регистрация: 04.11.2013
Сообщений: 30
1

Найти вершины которые создают цикл Эйлера

09.11.2013, 17:15. Просмотров 405. Ответов 0
Метки нет (Все метки)

Здравствуйте. Мне нужно создать программу, которая будет находить список вершин создающих цикл Эйлера. Программа должна работать с любым графом.
Эйлеров цикл — это маршрут, проходящий по всем рёбрам графа по одному разу.

Вот что у меня получилось:
Prolog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
graph([a-b,a-c,a-d,b-c,c-d,c-e,d-e]).
 
edge(X,Y,[X-Y|_]).
edge(X,Y,[Y-X|_]).
edge(X,Y,[_|T]) :- edge(X,Y,T).
 
erase(X,Y,[X-Y|T],T).
erase(X,Y,[Y-X|T],T).
erase(X,Y,[H|T],[H|T2]) :- erase(X,Y,T,T2).
 
route(X,Y,P,[X-Y]) :- edge(X,Y,P).
route(X,Y,P,[X-Z|V]) :- edge(X,Z,P), erase(X,Z,P,P2), route(Z,Y,P2,V).
 
e_chain(X,P,M) :-
    graph(P),
    route(X,Y,P,M),
    X \= Y,
    length(P,L),
    length(M,L).
Пример работы прикреплен к посту.

Но все проблема в том что он работает только с этим графом. То есть если задать другой граф, то она не работает. (даже если в этом графе есть Эйлеров цикл)
Как сделать чтобы программа была универсальная? помогите пожалуйста.
0
Миниатюры
Найти вершины которые создают цикл Эйлера  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.11.2013, 17:15
Ответы с готовыми решениями:

Найти вершины которые образуют цикл Гамильтона
помогите пожалуйста в прологе вобще ноль, после с++ его понять тяжко

Найти цикл в графе, содержащий заданные вершины.
в неориентированном графе для двух заданных вершин найти какой-нибудь цикл, на...

Найти все вершины графа, к которым существует путь заданной длины от выделенной вершины графа
Написать программу на prologuse на русском языке как на примере(Определить,...

вершины,которые не есть листами с парными числами
Написать предикат, который подсчитывает вершины,которые не есть листами с...

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

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.11.2013, 17:15

Найти все вершины графа, достижимые из заданной
помогите пожалуйста с графами((:help: Найти все вершины графа, достижимые из...

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

Найти вершины которые создают цикл Эйлера
Здравствуйте. Помогите пожалуйста создать программу, которая будет находить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

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