Как написать пролог программы и запросы - PullRequest
0 голосов
/ 20 сентября 2018

Написать программу Пролог для следующих.Я написал все, и мне нужно знать, что последние два верны или нет, которые я написал.

1. saman likes maths.
2. saman likes science.
3. udara likes maths.
4. fazal likes science.
5. fazal likes music.
6. geetha likes history.
7. geetha likes science.
8. geetha likes music.
9. those who like maths and science will follow engineering for advance level.
10. those who likes history or music will follow art for advance level.

Это правильно для последних двух?

student(X):- like(X,maths_and_science),follow(X,engineering).
student(X):- likes(X,history_or_music), follow(X,art).

Я не знаю, как написать пролог для следующих запросов.

1) Does saman like maths or music?

2) Who likes science and music?

3) who will do engineering?

Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 20 сентября 2018
те, кто любит математику и естествознание, будут изучать инженерию для продвинутого уровня. те, кто любит историю или музыку, будут изучать искусство для продвинутого уровня.

Верно ли это для последних двух??

Нет.Это может быть:

will_follow(Student, engineering) :-
    likes(Student, maths),
    likes(Student, science).

will_follow(Student, art) :-
    likes(Student, history)  ;
    likes(Student, music).

1) Любит ли саман математику или музыку?

likes(saman, art) ; likes(saman, music).     % intentionally incorrect

2) Кто любит науку и музыку?

likes( Who, science) , likes( Who, maths).   % intentionally incorrect

3) кто будет заниматься инженерным делом?

will_follow( Who, arts ).                    % intentionally incorrect

Поскольку это выглядит как задание, я намеренно использовал неправильные имена здесь и там.Вам придется исправить это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...