когда я пытаюсь вызвать defrule
, которые были использованы уже, клипса остановки ..Вернитесь к вышеупомянутому правилу в клипах
некоторых defrule
необходимости использовать более чем один раз, есть ли способ сделать это
здесь является примером
(
defrule choice-in-powerPlant2
(powerPlant2-question)
=>
(printout t "Are Filter and Carburetor Air working fine(y/n)?" crlf)
(bind ?response (check-YNoptions-input)); Get user input on type of questions
(if (eq ?response y)
then
(assert (powerPlant1-question)
)
)
(if (or(eq ?response q) (eq ?response Q))
then
(output-exitmessage)
)
(if (eq ?response n)
then
(printout t "Have you fixed this(y/n)?" crlf)
(bind ?response (check-YNoptions-input)); Get user input on type of questions
(if (eq ?response y)
then
(assert (powerPlant1-question)
)
)
(if (eq ?response n)
then
(printout req "Please replace Filter and Carburetor Air " crlf)
(assert (powerPlant3-question))
)
)
)
в правиле 2 я хочу вернуться к правилу 1, когда я вхожу «у» = да
"остановился после того, как я ввел" y ""
Сейчас работа! thank u sooooooooooooooooo much^____^ thank u Gary^____________^ –
Я просто хочу знать, может ли это работать на все defrule, только написать его один раз? или мне нужно написать этот код для каждого правила? –
Вам нужно будет сделать это для каждого правила, которое вы хотите выполнить повторно. –