Форум программистов, компьютерный форум, киберфорум
Prolog
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
7 / 0 / 1
Регистрация: 03.03.2014
Сообщений: 10

Задача про трех дочерей на Turbo Prolog

03.03.2014, 15:19. Показов 2855. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется задача про трех дочерей класса для второго. Нужно решить ее на Турбо Прологе без использования списков и с ними.
Вот сама задача:
Три дочери писательницы Дорис Кей - Джуди, Айрис и Линда тоже очень талантливы. Они приобрели известность в разных видах искусств - пении, балете и кино. Все они живут в разных городах, поэтому Дорис часто звонит им в Париж, Рим и Чикаго.
1. Джуди живет не в Париже, а Линда - не в Риме.
2. Парижанка не снимается в кино.
3. Та, кто живет в Риме, певица.
4. Линда равнодушна к балету.
Где живет Айрис и чем она занимается?

Вот мое решение, но оно не работает.
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
domains
city,person,occupation = symbol
predicates
likes(person,occupation)
lives(person,city)
pers(person)
occup(occupation)
cit(city)
judi(person)
linda(person)
get_iris
goal
get_iris.
clauses
pers("Judi"). 
pers("Iris"). 
pers("Linda").
occup("dance"). 
occup("cinema"). 
occup("sing").
cit("Paris"). 
cit("Rome"). 
cit("Chicago").
likes(C,D):-pers(C),occup(D).
 
judi(X) :- not(lives(X,"Paris")),
X="Judi".
linda(Y):- not(lives(Y,"Rome")),
not(likes(Y,"dance")),
Y="Linda".
lives(X,Y):-pers(X),cit(Y).
lives(Z,"Paris"):-
not(likes(Z,"cinema")).
lives(A,"Rome"):-
likes(A,"sing").
 
get_iris :-
likes("Iris",Y),
lives("Iris",Z),
 
write(X," - ",Y," - ",Z),nl.
Это без использвания списков. ПРошу помочь с решением.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.03.2014, 15:19
Ответы с готовыми решениями:

Задача про отель (Turbo prolog 2.0)
Помогите пожалуйста с решением задачи. Вроде на форуме была похожая, но с более сложными условиями, не получается упростить. написать...

Логическая задача про животных Turbo Prolog
Задана база знаний «Животные»: Живой - пес. Рекс - собака. Белка - кошка. 16 Быстрый - лошадь. Живой - черный. Белка - белая. Рекс - рыжий....

XLISP логическая задача про дочерей, города и занятия
Здраствуйте! Вот такая задача! Три дочери писательницы Дорис Кей - Джуди, Айрис и Линда тоже очень талантливы. Они приобрели...

1
7 / 0 / 1
Регистрация: 03.03.2014
Сообщений: 10
18.03.2014, 02:27  [ТС]
Лучший ответ Сообщение было отмечено Taatshi как решение

Решение

для тех, кому вдруг понадобится, вот решение
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
25
26
27
28
29
domains
    city,person,occupation = symbol
predicates
    name(person)
    occup(occupation)
    cit(city)
    accordance(person,city,occupation)
    solve(person,city,occupation,person,city,occupation,person,city,occupation)
goal
    solve(X1,Y1,Z1,X2,Y2,Z2,X3,Y3,Z3).
clauses
    name(judi). name(iris). name(linda).
    occup(dance). occup(cinema). occup(sing).
    cit(paris). cit(rome). cit(chicago).
    accordance(X,Y,Z):-name(X),cit(Y),occup(Z),
    not(X=judi),Y=paris,not(Z=cinema).
    accordance(X,Y,Z):-name(X),cit(Y),occup(Z),
    not(X=linda),Y=rome,Z=sing.
    accordance(X,Y,Z):-name(X),cit(Y),occup(Z),
    X=linda,not(Y=rome),not(Z=dance).
    solve(X1,Y1,Z1,X2,Y2,Z2,X3,Y3,Z3):-
    X1=judi,accordance(X1,Y1,Z1),
    X2=linda,accordance(X2,Y2,Z2),
    X3=iris,accordance(X3,Y3,Z3),
    Y1<>Y2,Y1<>Y3,Y2<>Y3,
    Z1<>Z2,Z1<>Z3,Z2<>Z3,nl,
    write(X1," ",Y1," ",Z1),nl,
    write(X2," ",Y2," ",Z2),nl,
    write(X3," ",Y3," ",Z3).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.03.2014, 02:27
Помогаю со студенческими работами здесь

Поездная бригада состоит из кондуктора, проводника, машиниста и помощника машиниста
Может у кого есть исходни на Prolog ЗЫ заранее спаисбо)

[Turbo Prolog] [Visual Prolog] Задача на рекурсию
Здравствуйте, помогите, пожалуйста, с такой задачей... Имеется горсть из N Монет C1,C2,....,Cn различного достоинства. Определить,...

Студенты Дина, Соня, Коля, Рома и Миша учатся в иституте [Turbo Prolog]
Решите пожалуйста задачу! Студенты Дина, Соня, Коля, Рома и Миша учатся в иституте. Их фамилии - Бойченко, Савченко, Карпенко, Лысенко и...

turbo prolog. задача на списки
Здравствуйте. Задача звучит так: Есть 2 списка L1 и L2, и какое-то число X. Необходимо после каждого элемента списка L1, равному X, вывести...

Сколько серых мышей у Йозефа? [Turbo Prolog]
У Йозефа 100 мышей, некоторые-серые. Известно, что хотябы одна мышь серая, а из двух мышей хотя бы одна-белая. ? Сколько серых мышей...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru