我有一个全能的结构,具有逻辑条件,只能过滤一些事实:
(do-for-all-facts ((?hotel albergo))
(eq ?hotel:localita ?current-city)
(>= ?hotel:disponibilita (/ ?number-of-people 2))
(<= (* ?hotel:prezzo ?current-days) ?budget-for-locality)
(printout t (>= ?hotel:disponibilita (/ ?number-of-people 2)) crlf)
(if (> ?hotel:disponibilita ?max)
then
(bind ?most-available-hotel ?hotel)
(bind ?max ?hotel:disponibilita)
)
)
似乎无法正确过滤,因为
(printout t (>= ?hotel:disponibilita (/ ?number-of-people 2)) crlf)
行打印FALSE。我该如何对do-for-all-facts
构造中的逻辑和所有条件进行赋值?
答案 0 :(得分:0)
我通过在事实查询中只使用一种条件解决了这个问题。