0

MIT Sceheme でチェス ゲームの作成に取り組んでいます。すべての駒の動きを追跡する手順を作成したいと考えています。

ここに例があります。ルークを5マス上に移動させます。次のターンは 5 スペース戻してほしい。問題は、前のターンに前進した駒を追跡する方法がわからないことです。したがって、それを後退させる方法がわかりません。私が現在できることは、ボード全体の状態を取得することです。ある種の突然変異を使用する必要があると思いますか?

4

1 に答える 1

1

リスト内の以前のすべての移動を追跡してみてください-cons最新の移動(および移動を実行したピースを示す記号)だけを移動ログリストに追加し、手順とともにそれを渡します. 何らかの理由で最近の動きを見つける必要がある場合は、リストを数ステップさかのぼって検索するのが簡単です。これにより、ゲームを追跡したい場合に追加機能が得られます.

コードの一部を共有したい場合は、この回答を編集して、実装に関するより具体的な詳細を追加します。

于 2012-12-03T19:41:04.877 に答える