我对prolog很新,并且明天有一份作业。我们必须使用给定的位置和移动来自动化游戏。当我输入去。它返回false,我得到多个运算符预期的错误。我在我的代码中标记了它们。
感谢。
/*
first, text descriptions of all the places in
the game.
*/
description(valley,
'You are in a pleasant valley, with a trail ahead.').
description(path,
'You are on a path, with ravines on both sides.').
description(cliff,
'You are teetering on the edge of a cliff.').
description(fork,
'You are at a fork in the path.').
description(maze(),
'You are in a maze of twisty trails, all alike.'). %operator error
description(mountaintop,
'You are on the mountaintop.').
description(labyrinth(),
'You are lost in a winding corridor.'). %operator error
/*
report prints the description of your current
location.
*/
report :-
at(you,X),
description(X,Y),
write(Y), nl.
/*
These connect predicates establish the map.
The meaning of connect(X,Dir,Y) is that if you
are at X and you move in direction Dir, you
get to Y. Recognized directions are
forward, right, and left.
*/
connect(valley,forward,path).
connect(path,right,cliff).
connect(path,left,cliff).
connect(path,forward,fork).
connect(fork,forward,labyrinth(0)).
connect(fork,left,maze(0)).
connect(fork,right,mountaintop).
connect(mountaintop,left,fork).
connect(maze(0),left,maze(1)).
connect(maze(0),right,maze(2)).
connect(maze(1),left,maze(0)).
connect(maze(1),right,maze(2)).
connect(maze(2),forward,maze(4)).
connect(maze(2),left,fork).
connect(maze(2),right,maze(0)).
connect(maze(3),left,maze(0)).
connect(maze(3),right,maze(3)).
connect(maze(4),left,mountaintop).
connect(maze(4),right,maze(4)).
connect(labyrinth(0),left,labyrinth(1)).
connect(labyrinth(0),right,labyrinth(15)).
connect(labyrinth(1),left,labyrinth(2)).
connect(labyrinth(1),right,labyrinth(10)).
connect(labyrinth(2),left,labyrinth(3)).
connect(labyrinth(2),right,labyrinth(9)).
connect(labyrinth(3),right,labyrinth(4)).
connect(labyrinth(4),left,labyrinth(5)).
connect(labyrinth(4),right,labyrinth(9)).
connect(labyrinth(5),left,labyrinth(6)).
connect(labyrinth(5),right,labyrinth(8)).
connect(labyrinth(6),right,labyrinth(7)).
connect(labyrinth(7),left,labyrinth(8)).
connect(labyrinth(7),right,labyrinth(12)).
connect(labyrinth(8),left,labyrinth(7)).
connect(labyrinth(8),right,labyrinth(9)).
connect(labyrinth(9),left,labyrinth(10)).
connect(labyrinth(9),right,labyrinth(8)).
connect(labyrinth(10),left,labyrinth(9)).
connect(labyrinth(10),right,labyrinth(11)).
connect(labyrinth(11),left,labyrinth(12)).
connect(labyrinth(11),right,labyrinth(10)).
connect(labyrinth(12),left,labyrinth(11)).
connect(labyrinth(12),right,labyrinth(13)).
connect(labyrinth(13),left,labyrinth(14)).
connect(labyrinth(14),left,labyrinth(15)).
connect(labyrinth(14),right,labyrinth(11)).
connect(labyrinth(15),left,fork).
connect(labyrinth(15),right,fork).
/*
move(Dir) moves you in direction Dir, then
prints the description of your new location.
*/
move(Dir) :-
at(you,loc),
connect(loc,Dir,Next),
retract(at(you,loc)),
assert(at(you,Next)),
report,
!.
/*
But if the argument was not a legal direction,
print an error message and don't move.
*/
move(_) :-
write('That is not a legal move.\n'),
report.
/*
Shorthand for moves.
*/
forward :- move(forward).
left :- move(left).
right :- move(right).
/*
If you and the ogre are at the same place, it
kills you.
*/
ogre :-
at(ogre,loc),
at(you,loc),
write('An ogre sucks your brain out through\n'),
write('your eye sockets, and you die.\n'),
retract(at(you,loc)),
assert(at(you,done)),
!.
/*
But if you and the ogre are not in the same place,
nothing happens.
*/
ogre.
/*
If you and the treasure are at the same place, you
win.
*/
treasure :-
at(treasure,loc),
at(you,loc),
write('There is a treasure here.\n'),
write('Congratulations, you win!\n'),
retract(at(you,loc)),
assert(at(you,done)),
!.
/*
But if you and the treasure are not in the same
place, nothing happens.
*/
treasure.
/*
If you are at the cliff, you fall off and die.
*/
cliff :-
at(you,cliff),
write('You fall off and die.\n'),
retract(at(you,cliff)),
assert(at(you,done)),
!.
/*
But if you are not at the cliff nothing happens.
*/
cliff.
/*
main loop. Stop if player won or lost.
*/
main :-
at(you,done),
write('Thanks for playing.\n'),
!.
/*
main loop. Not done, so get a move from the user
and make it. Then run all our special behaviors.
Then repeat.
*/
main([H|T]) :-
write('\nNext move -- '),
call(H),
ogre,
treasure,
cliff,
main(T).
/*
This is the starting point for the game. We
assert the initial conditions, print an initial
report, then start the main loop.
*/
start([Head|[Head2|Tail]]) :-
moves = [forward., %operator error
forward.,
left.,
right.,
left.,
left.,
right.,
forward.,
forward.,
left.,
forward.,
left.,
left.,
left.,
right.,
left.,
left.,
right.,
left.,
right.,
left.,
right.,
left.,
right.,
left.,
left.],
retractall(at(_,_)), % clean up from previous runs
assert(at(you,valley)),
assert(at(ogre,Head)),
assert(at(treasure, Head2)),
write('This is an adventure game. \n'),
write('legal moves are left, right, or forward.\n'),
write('End each move with a period.\n\n'),
report,
main(moves),
start(Tail).
go :-
config = [path,fork,
path,mountaintop,
path,maze(0),
path,maze(1),
path,maze(2),
path,maze(3),
path,maze(4),
path,labyrinth(0),
path,labyrinth(1),
path,labyrinth(2),
path,labyrinth(3),
path,labyrinth(4),
path,labyrinth(5),
path,labyrinth(6),
path,labyrinth(7),
path,labyrinth(8),
path,labyrinth(9),
path,labyrinth(10),
path,labyrinth(11),
path,labyrinth(12),
path,labyrinth(13),
path,labyrinth(14),
path,labyrinth(15),
fork,path,
fork,mountaintop,
fork,maze(0),
fork,maze(1),
fork,maze(2),
fork,maze(3),
fork,maze(4),
fork,labyrinth(0),
fork,labyrinth(1),
fork,labyrinth(2),
fork,labyrinth(3),
fork,labyrinth(4),
fork,labyrinth(5),
fork,labyrinth(6),
fork,labyrinth(7),
fork,labyrinth(8),
fork,labyrinth(9),
fork,labyrinth(10),
fork,labyrinth(11),
fork,labyrinth(12),
fork,labyrinth(13),
fork,labyrinth(14),
fork,labyrinth(15),
mountaintop,path,
mountaintop,fork,
mountaintop,maze(0),
mountaintop,maze(1),
mountaintop,maze(2),
mountaintop,maze(3),
mountaintop,maze(4),
mountaintop,labyrinth(0),
mountaintop,labyrinth(1),
mountaintop,labyrinth(2),
mountaintop,labyrinth(3),
mountaintop,labyrinth(4),
mountaintop,labyrinth(5),
mountaintop,labyrinth(6),
mountaintop,labyrinth(7),
mountaintop,labyrinth(8),
mountaintop,labyrinth(9),
mountaintop,labyrinth(10),
mountaintop,labyrinth(11),
mountaintop,labyrinth(12),
mountaintop,labyrinth(13),
mountaintop,labyrinth(14),
mountaintop,labyrinth(15),
maze(0),path,
maze(0),fork,
maze(0),mountaintop,
maze(0),maze(1),
maze(0),maze(2),
maze(0),maze(3),
maze(0),maze(4),
maze(0),labyrinth(0),
maze(0),labyrinth(1),
maze(0),labyrinth(2),
maze(0),labyrinth(3),
maze(0),labyrinth(4),
maze(0),labyrinth(5),
maze(0),labyrinth(6),
maze(0),labyrinth(7),
maze(0),labyrinth(8),
maze(0),labyrinth(9),
maze(0),labyrinth(10),
maze(0),labyrinth(11),
maze(0),labyrinth(12),
maze(0),labyrinth(13),
maze(0),labyrinth(14),
maze(0),labyrinth(15),
maze(1),path,
maze(1),fork,
maze(1),mountaintop,
maze(1),maze(0),
maze(1),maze(2),
maze(1),maze(3),
maze(1),maze(4),
maze(1),labyrinth(0),
maze(1),labyrinth(1),
maze(1),labyrinth(2),
maze(1),labyrinth(3),
maze(1),labyrinth(4),
maze(1),labyrinth(5),
maze(1),labyrinth(6),
maze(1),labyrinth(7),
maze(1),labyrinth(8),
maze(1),labyrinth(9),
maze(1),labyrinth(10),
maze(1),labyrinth(11),
maze(1),labyrinth(12),
maze(1),labyrinth(13),
maze(1),labyrinth(14),
maze(1),labyrinth(15),
maze(2),path,
maze(2),fork,
maze(2),mountaintop,
maze(2),maze(0),
maze(2),maze(1),
maze(2),maze(3),
maze(2),maze(4),
maze(2),labyrinth(0),
maze(2),labyrinth(1),
maze(2),labyrinth(2),
maze(2),labyrinth(3),
maze(2),labyrinth(4),
maze(2),labyrinth(5),
maze(2),labyrinth(6),
maze(2),labyrinth(7),
maze(2),labyrinth(8),
maze(2),labyrinth(9),
maze(2),labyrinth(10),
maze(2),labyrinth(11),
maze(2),labyrinth(12),
maze(2),labyrinth(13),
maze(2),labyrinth(14),
maze(2),labyrinth(15),
maze(3),path,
maze(3),fork,
maze(3),mountaintop,
maze(3),maze(0),
maze(3),maze(1),
maze(3),maze(2),
maze(3),maze(4),
maze(3),labyrinth(0),
maze(3),labyrinth(1),
maze(3),labyrinth(2),
maze(3),labyrinth(3),
maze(3),labyrinth(4),
maze(3),labyrinth(5),
maze(3),labyrinth(6),
maze(3),labyrinth(7),
maze(3),labyrinth(8),
maze(3),labyrinth(9),
maze(3),labyrinth(10),
maze(3),labyrinth(11),
maze(3),labyrinth(12),
maze(3),labyrinth(13),
maze(3),labyrinth(14),
maze(3),labyrinth(15),
maze(4),path,
maze(4),fork,
maze(4),mountaintop,
maze(4),maze(0),
maze(4),maze(1),
maze(4),maze(2),
maze(4),maze(3),
maze(4),labyrinth(0),
maze(4),labyrinth(1),
maze(4),labyrinth(2),
maze(4),labyrinth(3),
maze(4),labyrinth(4),
maze(4),labyrinth(5),
maze(4),labyrinth(6),
maze(4),labyrinth(7),
maze(4),labyrinth(8),
maze(4),labyrinth(9),
maze(4),labyrinth(10),
maze(4),labyrinth(11),
maze(4),labyrinth(12),
maze(4),labyrinth(13),
maze(4),labyrinth(14),
maze(4),labyrinth(15),
labyrinth(0),path,
labyrinth(0),fork,
labyrinth(0),mountaintop,
labyrinth(0),maze(0),
labyrinth(0),maze(1),
labyrinth(0),maze(2),
labyrinth(0),maze(3),
labyrinth(0),maze(4),
labyrinth(0),labyrinth(1),
labyrinth(0),labyrinth(2),
labyrinth(0),labyrinth(3),
labyrinth(0),labyrinth(4),
labyrinth(0),labyrinth(5),
labyrinth(0),labyrinth(6),
labyrinth(0),labyrinth(7),
labyrinth(0),labyrinth(8),
labyrinth(0),labyrinth(9),
labyrinth(0),labyrinth(10),
labyrinth(0),labyrinth(11),
labyrinth(0),labyrinth(12),
labyrinth(0),labyrinth(13),
labyrinth(0),labyrinth(14),
labyrinth(0),labyrinth(15),
labyrinth(1),path,
labyrinth(1),fork,
labyrinth(1),mountaintop,
labyrinth(1),maze(0),
labyrinth(1),maze(1),
labyrinth(1),maze(2),
labyrinth(1),maze(3),
labyrinth(1),maze(4),
labyrinth(1),labyrinth(0),
labyrinth(1),labyrinth(2),
labyrinth(1),labyrinth(3),
labyrinth(1),labyrinth(4),
labyrinth(1),labyrinth(5),
labyrinth(1),labyrinth(6),
labyrinth(1),labyrinth(7),
labyrinth(1),labyrinth(8),
labyrinth(1),labyrinth(9),
labyrinth(1),labyrinth(10),
labyrinth(1),labyrinth(11),
labyrinth(1),labyrinth(12),
labyrinth(1),labyrinth(13),
labyrinth(1),labyrinth(14),
labyrinth(1),labyrinth(15),
labyrinth(2),path,
labyrinth(2),fork,
labyrinth(2),mountaintop,
labyrinth(2),maze(0),
labyrinth(2),maze(1),
labyrinth(2),maze(2),
labyrinth(2),maze(3),
labyrinth(2),maze(4),
labyrinth(2),labyrinth(0),
labyrinth(2),labyrinth(1),
labyrinth(2),labyrinth(3),
labyrinth(2),labyrinth(4),
labyrinth(2),labyrinth(5),
labyrinth(2),labyrinth(6),
labyrinth(2),labyrinth(7),
labyrinth(2),labyrinth(8),
labyrinth(2),labyrinth(9),
labyrinth(2),labyrinth(10),
labyrinth(2),labyrinth(11),
labyrinth(2),labyrinth(12),
labyrinth(2),labyrinth(13),
labyrinth(2),labyrinth(14),
labyrinth(2),labyrinth(15),
labyrinth(3),path,
labyrinth(3),fork,
labyrinth(3),mountaintop,
labyrinth(3),maze(0),
labyrinth(3),maze(1),
labyrinth(3),maze(2),
labyrinth(3),maze(3),
labyrinth(3),maze(4),
labyrinth(3),labyrinth(0),
labyrinth(3),labyrinth(1),
labyrinth(3),labyrinth(2),
labyrinth(3),labyrinth(4),
labyrinth(3),labyrinth(5),
labyrinth(3),labyrinth(6),
labyrinth(3),labyrinth(7),
labyrinth(3),labyrinth(8),
labyrinth(3),labyrinth(9),
labyrinth(3),labyrinth(10),
labyrinth(3),labyrinth(11),
labyrinth(3),labyrinth(12),
labyrinth(3),labyrinth(13),
labyrinth(3),labyrinth(14),
labyrinth(3),labyrinth(15),
labyrinth(4),path,
labyrinth(4),fork,
labyrinth(4),mountaintop,
labyrinth(4),maze(0),
labyrinth(4),maze(1),
labyrinth(4),maze(2),
labyrinth(4),maze(3),
labyrinth(4),maze(4),
labyrinth(4),labyrinth(0),
labyrinth(4),labyrinth(1),
labyrinth(4),labyrinth(2),
labyrinth(4),labyrinth(3),
labyrinth(4),labyrinth(5),
labyrinth(4),labyrinth(6),
labyrinth(4),labyrinth(7),
labyrinth(4),labyrinth(8),
labyrinth(4),labyrinth(9),
labyrinth(4),labyrinth(10),
labyrinth(4),labyrinth(11),
labyrinth(4),labyrinth(12),
labyrinth(4),labyrinth(13),
labyrinth(4),labyrinth(14),
labyrinth(4),labyrinth(15),
labyrinth(5),path,
labyrinth(5),fork,
labyrinth(5),mountaintop,
labyrinth(5),maze(0),
labyrinth(5),maze(1),
labyrinth(5),maze(2),
labyrinth(5),maze(3),
labyrinth(5),maze(4),
labyrinth(5),labyrinth(0),
labyrinth(5),labyrinth(1),
labyrinth(5),labyrinth(2),
labyrinth(5),labyrinth(3),
labyrinth(5),labyrinth(4),
labyrinth(5),labyrinth(6),
labyrinth(5),labyrinth(7),
labyrinth(5),labyrinth(8),
labyrinth(5),labyrinth(9),
labyrinth(5),labyrinth(10),
labyrinth(5),labyrinth(11),
labyrinth(5),labyrinth(12),
labyrinth(5),labyrinth(13),
labyrinth(5),labyrinth(14),
labyrinth(5),labyrinth(15),
labyrinth(6),path,
labyrinth(6),fork,
labyrinth(6),mountaintop,
labyrinth(6),maze(0),
labyrinth(6),maze(1),
labyrinth(6),maze(2),
labyrinth(6),maze(3),
labyrinth(6),maze(4),
labyrinth(6),labyrinth(0),
labyrinth(6),labyrinth(1),
labyrinth(6),labyrinth(2),
labyrinth(6),labyrinth(3),
labyrinth(6),labyrinth(4),
labyrinth(6),labyrinth(5),
labyrinth(6),labyrinth(7),
labyrinth(6),labyrinth(8),
labyrinth(6),labyrinth(9),
labyrinth(6),labyrinth(10),
labyrinth(6),labyrinth(11),
labyrinth(6),labyrinth(12),
labyrinth(6),labyrinth(13),
labyrinth(6),labyrinth(14),
labyrinth(6),labyrinth(15),
labyrinth(7),path,
labyrinth(7),fork,
labyrinth(7),mountaintop,
labyrinth(7),maze(0),
labyrinth(7),maze(1),
labyrinth(7),maze(2),
labyrinth(7),maze(3),
labyrinth(7),maze(4),
labyrinth(7),labyrinth(0),
labyrinth(7),labyrinth(1),
labyrinth(7),labyrinth(2),
labyrinth(7),labyrinth(3),
labyrinth(7),labyrinth(4),
labyrinth(7),labyrinth(5),
labyrinth(7),labyrinth(6),
labyrinth(7),labyrinth(8),
labyrinth(7),labyrinth(9),
labyrinth(7),labyrinth(10),
labyrinth(7),labyrinth(11),
labyrinth(7),labyrinth(12),
labyrinth(7),labyrinth(13),
labyrinth(7),labyrinth(14),
labyrinth(7),labyrinth(15),
labyrinth(8),path,
labyrinth(8),fork,
labyrinth(8),mountaintop,
labyrinth(8),maze(0),
labyrinth(8),maze(1),
labyrinth(8),maze(2),
labyrinth(8),maze(3),
labyrinth(8),maze(4),
labyrinth(8),labyrinth(0),
labyrinth(8),labyrinth(1),
labyrinth(8),labyrinth(2),
labyrinth(8),labyrinth(3),
labyrinth(8),labyrinth(4),
labyrinth(8),labyrinth(5),
labyrinth(8),labyrinth(6),
labyrinth(8),labyrinth(7),
labyrinth(8),labyrinth(9),
labyrinth(8),labyrinth(10),
labyrinth(8),labyrinth(11),
labyrinth(8),labyrinth(12),
labyrinth(8),labyrinth(13),
labyrinth(8),labyrinth(14),
labyrinth(8),labyrinth(15),
labyrinth(9),path,
labyrinth(9),fork,
labyrinth(9),mountaintop,
labyrinth(9),maze(0),
labyrinth(9),maze(1),
labyrinth(9),maze(2),
labyrinth(9),maze(3),
labyrinth(9),maze(4),
labyrinth(9),labyrinth(0),
labyrinth(9),labyrinth(1),
labyrinth(9),labyrinth(2),
labyrinth(9),labyrinth(3),
labyrinth(9),labyrinth(4),
labyrinth(9),labyrinth(5),
labyrinth(9),labyrinth(6),
labyrinth(9),labyrinth(7),
labyrinth(9),labyrinth(8),
labyrinth(9),labyrinth(10),
labyrinth(9),labyrinth(11),
labyrinth(9),labyrinth(12),
labyrinth(9),labyrinth(13),
labyrinth(9),labyrinth(14),
labyrinth(9),labyrinth(15),
labyrinth(10),path,
labyrinth(10),fork,
labyrinth(10),mountaintop,
labyrinth(10),maze(0),
labyrinth(10),maze(1),
labyrinth(10),maze(2),
labyrinth(10),maze(3),
labyrinth(10),maze(4),
labyrinth(10),labyrinth(0),
labyrinth(10),labyrinth(1),
labyrinth(10),labyrinth(2),
labyrinth(10),labyrinth(3),
labyrinth(10),labyrinth(4),
labyrinth(10),labyrinth(5),
labyrinth(10),labyrinth(6),
labyrinth(10),labyrinth(7),
labyrinth(10),labyrinth(8),
labyrinth(10),labyrinth(9),
labyrinth(10),labyrinth(11),
labyrinth(10),labyrinth(12),
labyrinth(10),labyrinth(13),
labyrinth(10),labyrinth(14),
labyrinth(10),labyrinth(15),
labyrinth(11),path,
labyrinth(11),fork,
labyrinth(11),mountaintop,
labyrinth(11),maze(0),
labyrinth(11),maze(1),
labyrinth(11),maze(2),
labyrinth(11),maze(3),
labyrinth(11),maze(4),
labyrinth(11),labyrinth(0),
labyrinth(11),labyrinth(1),
labyrinth(11),labyrinth(2),
labyrinth(11),labyrinth(3),
labyrinth(11),labyrinth(4),
labyrinth(11),labyrinth(5),
labyrinth(11),labyrinth(6),
labyrinth(11),labyrinth(7),
labyrinth(11),labyrinth(8),
labyrinth(11),labyrinth(9),
labyrinth(11),labyrinth(10),
labyrinth(11),labyrinth(12),
labyrinth(11),labyrinth(13),
labyrinth(11),labyrinth(14),
labyrinth(11),labyrinth(15),
labyrinth(12),path,
labyrinth(12),fork,
labyrinth(12),mountaintop,
labyrinth(12),maze(0),
labyrinth(12),maze(1),
labyrinth(12),maze(2),
labyrinth(12),maze(3),
labyrinth(12),maze(4),
labyrinth(12),labyrinth(0),
labyrinth(12),labyrinth(1),
labyrinth(12),labyrinth(2),
labyrinth(12),labyrinth(3),
labyrinth(12),labyrinth(4),
labyrinth(12),labyrinth(5),
labyrinth(12),labyrinth(6),
labyrinth(12),labyrinth(7),
labyrinth(12),labyrinth(8),
labyrinth(12),labyrinth(9),
labyrinth(12),labyrinth(10),
labyrinth(12),labyrinth(11),
labyrinth(12),labyrinth(13),
labyrinth(12),labyrinth(14),
labyrinth(12),labyrinth(15),
labyrinth(13),path,
labyrinth(13),fork,
labyrinth(13),mountaintop,
labyrinth(13),maze(0),
labyrinth(13),maze(1),
labyrinth(13),maze(2),
labyrinth(13),maze(3),
labyrinth(13),maze(4),
labyrinth(13),labyrinth(0),
labyrinth(13),labyrinth(1),
labyrinth(13),labyrinth(2),
labyrinth(13),labyrinth(3),
labyrinth(13),labyrinth(4),
labyrinth(13),labyrinth(5),
labyrinth(13),labyrinth(6),
labyrinth(13),labyrinth(7),
labyrinth(13),labyrinth(8),
labyrinth(13),labyrinth(9),
labyrinth(13),labyrinth(10),
labyrinth(13),labyrinth(11),
labyrinth(13),labyrinth(12),
labyrinth(13),labyrinth(14),
labyrinth(13),labyrinth(15),
labyrinth(14),path,
labyrinth(14),fork,
labyrinth(14),mountaintop,
labyrinth(14),maze(0),
labyrinth(14),maze(1),
labyrinth(14),maze(2),
labyrinth(14),maze(3),
labyrinth(14),maze(4),
labyrinth(14),labyrinth(0),
labyrinth(14),labyrinth(1),
labyrinth(14),labyrinth(2),
labyrinth(14),labyrinth(3),
labyrinth(14),labyrinth(4),
labyrinth(14),labyrinth(5),
labyrinth(14),labyrinth(6),
labyrinth(14),labyrinth(7),
labyrinth(14),labyrinth(8),
labyrinth(14),labyrinth(9),
labyrinth(14),labyrinth(10),
labyrinth(14),labyrinth(11),
labyrinth(14),labyrinth(12),
labyrinth(14),labyrinth(13),
labyrinth(14),labyrinth(15),
labyrinth(15),path,
labyrinth(15),fork,
labyrinth(15),mountaintop,
labyrinth(15),maze(0),
labyrinth(15),maze(1),
labyrinth(15),maze(2),
labyrinth(15),maze(3),
labyrinth(15),maze(4),
labyrinth(15),labyrinth(0),
labyrinth(15),labyrinth(1),
labyrinth(15),labyrinth(2),
labyrinth(15),labyrinth(3),
labyrinth(15),labyrinth(4),
labyrinth(15),labyrinth(5),
labyrinth(15),labyrinth(6),
labyrinth(15),labyrinth(7),
labyrinth(15),labyrinth(8),
labyrinth(15),labyrinth(9),
labyrinth(15),labyrinth(10),
labyrinth(15),labyrinth(11),
labyrinth(15),labyrinth(12),
labyrinth(15),labyrinth(13),
labyrinth(15),labyrinth(14)],
start(config).
答案 0 :(得分:0)
删除移动列表中start/1
中的所有点。而不是
moves = [forward., %operator error
forward.,
left.,
right.,
left.,
left.,
right.,
forward.,
forward.,
left.,
forward.,
left.,
left.,
left.,
right.,
left.,
left.,
right.,
left.,
right.,
left.,
right.,
left.,
right.,
left.,
left.]
执行:
moves = [forward,
forward,
left,
right,
left,
left,
right,
forward,
forward,
left,
forward,
left,
left,
left,
right,
left,
left,
right,
left,
right,
left,
right,
left,
right,
left,
left]