我需要使用 SWI-prolog 来解决家庭作业的逻辑难题,但即使有我的编程背景,我也发现语法和含义非常麻烦。我面临的问题是关于单例变量的错误,并且拼图返回错误。
这是我到目前为止所做的:
:- use_module(library(clpfd)).
sends(K,priscilla,C),
C#\=rose.
sends(carol,L,rose).
sends(dick,L,sun).
sends(K,L,landscape).
sends(bob,rhonda,C).
sends(edna,quincy,C).
sends(K,simon,deer).
sends(K,tina,C).
solve :-
sends(
[alice,bob,carol,dick,edna],
[priscilla,rhonda,quincy,simon,tina],
[rose,heart,sun,landscape,deer]).
这就是问题,向正确方向轻推或帮助我更好地理解语言的答案将不胜感激!