Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Prolog
Перезагрузить страницу Помогите, пожалуйста, решить логическую задачку на Prolog'е
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
pinguinchik pinguinchik вне форума
Новичок
 
Сообщений: 2
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 08.12.2017
По умолчанию Помогите, пожалуйста, решить логическую задачку на Prolog'е - 08.12.2017, 11:12

Известно, что один из трёх знаменитых в Чикаго гангстеров, клички которых Арчи, Босс и Весли, украл портфель с крупной суммой денег. На допросе каждый из них сделал три заявления.
Арчи: 1. Я не брал портфель.
2. В день кражи я уезжал из Чикаго.
3. Портфель украл Весли.
Босс: 1. Портфель украл Весли.
2. Если б я и взял его, то не сознался бы.
3. У меня и так много денег.
Весли: 1. Я не брал портфель.
2. Я давно ищу хороший портфель.
3. Арчи прав, он уезжал из Чикаго.
В ходе следствия выяснилось, что у каждого из трёх заявлений два верных, а одно нет. Кто украл портфель?
Ответить с цитированием
  (#2 (permalink)) Старый
pinguinchik pinguinchik вне форума
Новичок
 
Сообщений: 2
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 08.12.2017
По умолчанию 09.12.2017, 12:31

predicates
alibi(symbol,symbol)
declar(symbol,symbol)
a_v(symbol)
b_v(symbol)
w_v(symbol)
vor(symbol)

clauses
declar(X,Y):-X=archi,X=boss,X=wesley,Y=nekral,Y=mnogoDeneg,Y=ho rosh.
alibi(X,Y):-X=archi,X=boss,X=wesley,Y=yesjal,Y=neCosnal,Y=horo sh.

a_v(archi):-declar(archi,nekral),alibi(archi,yesjal),declar(we sley,nekral);
declar(archi,nekral),not(alibi(archi,yesjal)),not( declar(wesley,nekral));
not(declar(archi,nekral)),alibi(archi,yesjal),not( declar(wesley,nekral)).

b_v(boss):-not(declar(wesley,nekral)),alibi(boss,neCosnal),no t(declar(boss,mnogoDeneg));
not(declar(wesley,nekral)),not(alibi(boss,neCosnal )),declar(boss,mnogoDeneg);
declar(wesley,nekral),alibi(boss,neCosnal),declar( boss,mnogoDeneg).

w_v(wesley):-declar(wesley,nekral),alibi(wesley,horosh),not(ali bi(archi,yesjal));
declar(wesley,nekral),not(alibi(wesley,horosh)),al ibi(archi,yesjal);
not(declar(wesley,nekral)),alibi(wesley,horosh),al ibi(archi,yesjal).
vor(X) :- a_v(X); b_v(X); w_v(X).

goal
vor(X),write("Vor - ",X), nl,fail.


скажите, что не так?
не выводит никакого результата
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите решить логическую задачу на Visual Prolog shot_gamer Prolog 1 30.09.2015 19:40
Помогите Пожалуйста решить задачку в прологе Lena888 Prolog 0 06.05.2015 21:51
Помогите,пожалуйста,срочно решить задачку на прологе!!!! Bakzhanova Prolog 16 28.12.2014 20:43
Пожалуйста, помогите решить задачку на прологе!!! tana-_- Любые вопросы от новичков 5 15.12.2011 00:37
Пожалуйста, помогите решить задачку на прологе!!! tana-_- Prolog 0 06.12.2011 20:57
помогите пожалуйста решить задачку, очеень надо... еленка Pascal 0 22.11.2011 23:57
Помогите, пожалуйста, решить задачку: на dev C++ Leks100 Вопросы начинающих программистов 0 25.09.2011 14:46
ПОжалуйста, помогите решить задачки на Prolog Vera_ Prolog 0 13.12.2010 18:30
Пожалуйста помогите решить задачку,вроде с виду простая,но додуматься ни как немогу. Mr.Spilberg Pascal 0 11.12.2010 16:32
Помогите пожалуйста решить программу в Strawberry Prolog Hensem Prolog 20 28.10.2010 15:17
Помогите решить логическую задачку! Пожалуйста bubukin Prolog 9 28.04.2010 01:42
Помогите решить задачку про списки! (SWI-Prolog) help Prolog 1 11.05.2009 22:15



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов