Syntax Error: Operator expected in SWI Prolog
Syntax Error: Operator expected in SWI Prolog
每次尝试编译此缓冲区时,我总是收到语法错误。我已经完成了删除所有空格的常规步骤,但每次仍然出现相同的错误。
solve_puzzle(Swimmers):-
Swimmers=[_Girl1,_Girl2,_Girl3],
[girl(_,_,_,first),girl(_,_,_,second),girl(_,_,_,third)]=Swimmers,
is_faster(girl(claudia,_,_,_),(_,_,cheltenham_girls,_),Swimmers),
is_faster(girl(mary,_,_,_),girl(_,table_tennis,_,_),Swimmers),
member(girl(_,weightlifting,_,first),Swimmers),
member(girl(mary,_,sydney_girls_high_school,_),Swimmers),
member(girl(claudia,ballroom_dancing,_,_),Swimmers),
member(girl(_,_,hornsby_girls_high_school,_),Swimmers).
is_faster(F,S,[F|[S|_]]).
is_faster(F,S,[F,S,[_|Rest]]):- is_faster[F,S,Rest).
这是在做什么?每次我尝试序言时,我似乎都运行进入这个。
这个答案没有 没有的东西,但仍然:
我将您显示的代码保存到名为 foo.pl
的文件中,然后,当我尝试加载(查阅)该文件时,我得到:
?- [foo].
ERROR: foo.pl:12:41: Syntax error: Operator expected
true.
所以,foo.pl:12:41
是文件名:foo.pl
,行号:12
,列:41
.
这是最后一行,在您用括号 )
.
结束的方括号 [
之前的那一列
通常,您会在问题中显示您在尝试编译程序时收到的确切错误消息(作为 Stack Overflow 的一般规则,不仅适用于 Prolog)。请参阅 "how to ask a good question", and what is a "minimal, complete, and verifiable example"。
PS。据我所知,删除空格并不常见。这是调试技巧吗?
每次尝试编译此缓冲区时,我总是收到语法错误。我已经完成了删除所有空格的常规步骤,但每次仍然出现相同的错误。
solve_puzzle(Swimmers):-
Swimmers=[_Girl1,_Girl2,_Girl3],
[girl(_,_,_,first),girl(_,_,_,second),girl(_,_,_,third)]=Swimmers,
is_faster(girl(claudia,_,_,_),(_,_,cheltenham_girls,_),Swimmers),
is_faster(girl(mary,_,_,_),girl(_,table_tennis,_,_),Swimmers),
member(girl(_,weightlifting,_,first),Swimmers),
member(girl(mary,_,sydney_girls_high_school,_),Swimmers),
member(girl(claudia,ballroom_dancing,_,_),Swimmers),
member(girl(_,_,hornsby_girls_high_school,_),Swimmers).
is_faster(F,S,[F|[S|_]]).
is_faster(F,S,[F,S,[_|Rest]]):- is_faster[F,S,Rest).
这是在做什么?每次我尝试序言时,我似乎都运行进入这个。
这个答案没有
我将您显示的代码保存到名为 foo.pl
的文件中,然后,当我尝试加载(查阅)该文件时,我得到:
?- [foo].
ERROR: foo.pl:12:41: Syntax error: Operator expected
true.
所以,foo.pl:12:41
是文件名:foo.pl
,行号:12
,列:41
.
这是最后一行,在您用括号 )
.
[
之前的那一列
通常,您会在问题中显示您在尝试编译程序时收到的确切错误消息(作为 Stack Overflow 的一般规则,不仅适用于 Prolog)。请参阅 "how to ask a good question", and what is a "minimal, complete, and verifiable example"。
PS。据我所知,删除空格并不常见。这是调试技巧吗?