2015-11-10 1 views

Répondre

0
CLIPS> 
(deftemplate add 
    (multislot numbers)) 
CLIPS> 
(defrule add-3-numbers 
    (add (numbers ?n1 ?n2 ?n3)) 
    => 
    (printout t ?n1 " + " ?n2 " + " ?n3 " = " (+ ?n1 ?n2 ?n3) crlf)) 
CLIPS> (assert (add (numbers 1 2 3))) 
<Fact-1> 
CLIPS> (assert (add (numbers 2 9 11))) 
<Fact-2> 
CLIPS> (run) 
2 + 9 + 11 = 22 
1 + 2 + 3 = 6 
CLIPS> 

Mise à jour:

CLIPS> (clear) 
CLIPS> 
(defrule add-3-numbers 
    => 
    (printout t "Number 1? ") 
    (bind ?n1 (read)) 
    (printout t "Number 2? ") 
    (bind ?n2 (read)) 
    (printout t "Number 3? ") 
    (bind ?n3 (read)) 
    (printout t ?n1 " + " ?n2 " + " ?n3 " = " (+ ?n1 ?n2 ?n3) crlf)) 
CLIPS> (reset) 
CLIPS> (run) 
Number 1? 1 
Number 2? 2 
Number 3? 3 
1 + 2 + 3 = 6 
CLIPS> (evenp 3) 
FALSE 
CLIPS> (oddp 7) 
TRUE 
CLIPS> 
+0

Merci beaucoup s'il vous plaît pouvez-vous me aider à écrire un programme pour déterminer si un nombre est pair ou impair? –

+0

mais comment puis-je faire votre exemple utilisé pour obtenir trois entrées de l'utilisateur et retourner la somme d'entre eux? –

+0

génial, grâce à vous, je suis maintenant sur la bonne voie. –