1

我怎样才能为我的所有事实(点)递减 y?

我这样做是这样的:

(defrule decrementY 
        ?pto<-(point (y ?py))       
        (test (< ?py 3))
        =>  
        (modify ?pto (y (+ 1 ?py))))
4

1 回答 1

1

基本正确,但建议使用无循环。

(defrule decrementY 
    (declare (no-loop TRUE))
    ?pto<-(point (y ?py &: (< ?py 3) ))       
 =>  
    (modify ?pto (y (+ 1 ?py))))

如果您的意思是 * de *crement,请使用

    (modify ?pto (y (- ?py 1))))
于 2014-04-05T14:49:55.753 回答