0

プレイヤーと列を数えることで、ゲーム内の偶数/奇数プレイヤーと偶数/奇数列をチェックしようとしています。ある時点で、変数を正しくインスタンス化していないようです。これが私がゲームを呼び出す方法です:

playGame(Game):- 
    countPlayers(Game,TotalPlayers),
    colSize(Game,TotalCols),
    checkEvens(TotalPlayers,TotalCols);
    checkOdds(TotalPlayers,TotalCols).

問題は、TotalPlayers と TotalCols が正しく割り当てられていないことにあると思います。

他の質問を見てみましたが、問題は違うようです。私はプロローグが初めてで、どこかで些細な間違いを犯している可能性があります。

いくつかのトレースの後、奇数/偶数の組み合わせが入力であるときにエラーが発生しているようです。2 つの偶数または 2 つの奇数を入力すると、プログラムは期待どおりに動作します。1つの奇数と1つの偶数の入力が与えられると、壊れます。

完全なエラー:

ERROR: Arguments are not sufficiently instantiated
ERROR: In:
ERROR:   [11] 1 is _34862 mod 2
ERROR:   [10] checkOdds(_34894,_34896)
4

1 に答える 1