domains
X=string
predicates
take(X,X)
move(X,X)
get_on(X,X)
hit(X,X,X)
go clauses
go:-
take("Monkey","Stick"),
move("Monkey","Chair"),
get_on("Monkey","Chair"),
hit("Monkey","Stick","Banana"),
write("The monkey has hit the banana").
go:-
write("The monkey couldn't reach the banana").
take(Animal,Object):-
write("Does the ",Animal," take the ",Object,"?(y/n)"),
readchar(Reply),
Reply='y'.
move(Animal,Object):-
write("Does the ",Animal," move the ",Object,"?(y/n)"),
readchar(Reply),
Reply='y'.
get_on(Animal,Object):-
write("Does the ",Animal," get on ",Object,"?(y/n)"),
readchar(Reply),
Reply='y'.
hit(Animal,Object,Fruit):-
write("Does the ",Animal," hit the ",Fruit,"with the",Object,"?(y/n)"),
readchar(Reply),
Reply='y'.
Output:
Goal:go
Does the Monkey take the Stick?(y/n)
y
Does the Monkey move the Chair?(y/n)
y
Does the Monkey get on Chair?(y/n)
y
Does the Monkey hit the Banana with the Stick?(y/n)
y
The monkey has hit the banana
Goal:go
Does the Monkey take the Stick?(y/n)
y
Does the Monkey move the Chair?(y/n)
n
The monkey couldn't reach the banana
Related
error while running..
?- [‘L:/MANOJ/8TH SEM/AI/PROLOG TRY/Monkey_B2.pl’].
ERROR: l:/manoj/8th sem/ai/prolog try/monkey_b2.pl:1:8: Syntax error: Operator expected
Warning: l:/manoj/8th sem/ai/prolog try/monkey_b2.pl:18:
Redefined static procedure go/0
Previously defined at l:/manoj/8th sem/ai/prolog try/diagnosis.pl:15
true.
error occurred
we are havin AI in 7th sem..