Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.12.2009, 22:43   #1
Bruster
Пользователь
 
Регистрация: 03.11.2008
Сообщений: 18
По умолчанию В графе найти все его четырехвершинные полные подграфы[PROLOG]

Задание в теме.
Я нашел программку, но есть проблема, в ней нет вывода результатов.
Как его добавить в код не смог понять.
Если кто-то знает что да как прошу помочь.
Заранее благодврен.
Код программки:
Код:
domains
il=integer*
facts - дуги
дуга(integer,integer)
predicates
nondeterm ребро(integer,integer)
вершины(il,il)
удалить(integer,il,il)
nondeterm подмножество(integer,il,il)
nondeterm полный_подграф(il)
goal полный_подграф(Подграф).
clauses
дуга(1,2). дуга(2,3). дуга(3,4). дуга(1,4).
дуга(1,3). дуга(2,4). дуга(5,4). дуга(5,3).
дуга(5,2). дуга(5,6). дуга(1,5). дуга(2,6).

ребро(А,Б):- дуга(А,Б); дуга(Б,А).

вершины([А|Список],[А|Вершины]):- удалить(А,Список,Список1),
    вершины(Список1,Вершины).
вершины([],[]).

удалить(А,[А|Список],Список1):- !,удалить(А,Список,Список1).
удалить(А,[Б|Список],[Б|Список1]):- удалить(А,Список,Список1).
удалить(_,[],[]).

подмножество(0,[],_).
подмножество(К,[А|Подмн],[А|Множ]):- К>0,К1=К-1, подмножество(К1,Подмн,Множ).
подмножество(К,Подмн,[_|Множ]):- К>0,подмножество(К,Подмн,Множ).

полный_подграф([А,Б,В,Г]):- findall(Верш,ребро(Верш,_),Список),
    вершины(Список,Вершины),
    подмножество(4,[А,Б,В,Г],Вершины),
    ребро(А,Б),ребро(А,В),ребро(А,Г),
    ребро(Б,В),ребро(Б,Г),ребро(В,Г).
Также вместе с кодом, написано какие результаты должны быть выведены.
Код:
Подграф=[1,2,3,5]
Подграф=[1,2,3,4]
Подграф=[1,2,5,4]
Подграф=[1,3,5,4]
Подграф=[2,3,5,4]
Bruster вне форума Ответить с цитированием
Старый 24.12.2009, 09:55   #2
Bruster
Пользователь
 
Регистрация: 03.11.2008
Сообщений: 18
По умолчанию

Неужели никто не работал с прологом?
Bruster вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
неубиваемый вирус! все антивирусы не находят его! кто знает как его убрать? Yury111 Безопасность, Шифрование 12 05.06.2009 11:19
найти длину кратчайшего цикла в графе Petruha-nsk Общие вопросы C/C++ 4 13.05.2009 17:08
Свой медиаплеер и все что его касается NBSTUDIO Мультимедиа в Delphi 10 23.02.2009 21:32
Кликая на нужный Image, необходимо менять именно его, а не все динамически созданные. МаксMorfey Компоненты Delphi 2 04.01.2009 17:43