2014-04-05 2 views
1

내 모든 사실 (포인트)에 대해 y를 어떻게 감소시킬 수 있습니까?여러 사실 수정

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

답변

1

는 기본적으로 정확하지만, 더 루프는 바람직하지 :

나는 이런 식으로 일을하고 있습니다. 당신은 정말 * 드 * crement 사용

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

을 의미하는 경우

(modify ?pto (y (- ?py 1))))