我试图通过计算玩家和列来检查游戏中的偶数/奇数玩家和偶数/奇数列。在某些时候,似乎我没有正确实例化我的变量。我是这样称呼这款游戏的:
playGame(Game):-
countPlayers(Game,TotalPlayers),
colSize(Game,TotalCols),
checkEvens(TotalPlayers,TotalCols);
checkOdds(TotalPlayers,TotalCols).
我认为问题在于未正确分配 TotalPlayers 和 TotalCols。
我尝试查看其他问题,但问题似乎有所不同。我是 prolog 的新手,很可能在某个地方犯了一个小错误。
经过一些跟踪,当输入奇数/偶数的组合时,似乎会导致错误。给定两个偶数或两个奇数的输入,程序按预期运行。给定一个奇数和一个偶数的输入,它会中断。
完整错误:
ERROR: Arguments are not sufficiently instantiated
ERROR: In:
ERROR: [11] 1 is _34862 mod 2
ERROR: [10] checkOdds(_34894,_34896)