Варианты запроса - Prolog
Формулировка задачи:
Добрый день. Прошу прощения за беспокойство но такая проблема.
Нужно написать задачу на прологе, но примеров не было. Вот сижу туплю, что делать.
"Написать определения принадлежности конкретных (25-30) слов к частям речи и возможности их использования в качестве части предложения (подлежащее, сказуемое, дополнение и т.п.). Написать правила построения вопросительных, утвердительных и отрицательных предложений. Построить запросы, возможные варианты построения фраз различного типа."
Если не трудно помогите. И если не трудно с небольшими комментариями.
Списки нельзя использовать.
Заранее благодарен.
Решение задачи: «Варианты запроса»
textual
Листинг программы
predicates
noun(string)
verb(string)
adjective(string)
pronoun(string)
adverb(string)
quantum(string)
sign(string)
subject(string)
object(string)
predicate(string)
circumstance(string)
statement(string,string,string,string)
negation(string,string,string,string,string)
question(string,string,string,string,string)
clauses
%sush
noun("field").
noun("bucket").
noun("flowers").
noun("a pen").
noun("milk").
%glagol
verb("do").
verb("play").
verb("see").
verb("dream").
verb("to find").
%prilag
adjective("bright").
adjective("big").
adjective("little").
adjective("strange").
adjective("the black").
%mestoim
pronoun("i").
pronoun("do").
pronoun("we").
pronoun("she").
pronoun("he").
%narech
adverb("good").
adverb("fast").
adverb("slow").
adverb("accidenatlly").
adverb("carefully").
quantum("not").
sign("?").
%polez
subject(X):- noun(X); pronoun(X); adjective(X).
%dopoln
object(X):- noun(X); pronoun(X).
%skaz
predicate(X):- verb(X).
%ojbst
circumstance(X):-adverb(X).
%utverjd
statement(A,B,C,D):-subject(A),predicate(B),object(C),circumstance(D).
%otric
negation(A,B,E,C,D):-subject(A), quantum(E),predicate(B),object(C),circumstance(D).
%vopros
question(A,B,C,D,F):-subject(A),predicate(B),object(C),circumstance(D),sign(F).