2017-05-19 3 views
0

당신의 도움이 필요합니다. 나는CLIPS에서 문자열과 같은 사실 목록이 필요합니다

(fact (name1)(value1)) 
(fact (name2)(value2)) 
(fact (name3)(value3)) 

같은 사실을 내가 질문을하고 싶어 :

(printout t "Which of the fact do you like? " value1 value2 value3) 
내가 문자열과 같은 사실을 제시 할 수 있습니다 어떻게

?

답변

0
CLIPS> 
(deftemplate info 
    (slot name) 
    (slot value)) 
CLIPS> 
(deffacts initial 
    (info (name n1) (value v1)) 
    (info (name n2) (value v2)) 
    (info (name n3) (value v3))) 
CLIPS> 
(defrule query 
    => 
    (bind ?values (create$)) 
    (do-for-all-facts ((?f info)) TRUE 
     (bind ?values (create$ ?values ?f:value))) 
    (printout t "Which of the facts do you like? " ?values crlf)) 
CLIPS> (reset) 
CLIPS> (run) 
Which of the facts do you like? (v1 v2 v3) 
CLIPS> 
+0

대단히 감사합니다. –