我正在尝试实施多米诺骨牌游戏。每次移动时,我都想检查一下我可以玩的瓷砖。该程序将实际可用号码存储在列表中。
例如:
playable([3,4]).
我的手兼容的磁片存储在:
posibles([]).
获取带有可能动作的子列表的代码:
posibleMove([H|T]):-
playable([I|[D|_]]),
(member(I, H) ; member(D,H)),
posibles(X),
append(X, [H], Z),
retract(posibles(X)),
assert(posibles(Z)),
posibleMove(T), !.
posibleMove(T):-
posibleMove(T), !.
如何处理手中的瓷砖不兼容的情况,并继续搜索手中的其余瓷砖?