2011-01-07 21 views
0

大家好 我真的需要x-o或tic tac腳趾程序的源代碼在808186 任何機構都可以幫助我如何找到類似的東西?組裝x-o程序?

+0

這是一個家庭作業?如果是的話請添加作業標籤。 – 2011-01-07 15:30:33

回答

0

董事會有9個瓷磚。每個瓷磚都有三種狀態之一(空白,圓形,十字形)。給每個狀態一個數字,並用它們來計算整個棋盤的狀態(例如「board = tile [0] [0] | tile [0] [1] * 3 | tile [0] [2] * 3 * 3 |平鋪[1] [0] * 3 * 3 * 3 | ...「)。這會給你一個從0到19683的數字,表示當前的遊戲狀態。

使用「遊戲的當前狀態」整數作爲查找表的索引,其中查找表中的每個條目表示遊戲的新狀態。這將花費您大約38.45 KiB。使用每個條目的最高位(第16位)來表示「最後一位贏得比賽的球員」,因此您不需要花太多時間來檢測是否有人獲勝。

現在編寫一些代碼(用C或其他高級語言)來生成查找表。即使簡單的蠻力技術也應該給你一張代表完美對手的查找表,而不會有太多麻煩(儘管遊戲的重點在於娛樂性,而一個完美的對手是不可能打敗的並不好玩,所以完美可能是不好的在這種情況下)。

你需要的唯一的其他東西是用戶輸入和顯示代碼。使用少於64 KiB的代碼/數據/堆棧應該相當容易,所以你甚至不需要混淆段。

這個困難的部分將會找到一個實際的80186來測試它(並且不,現代的80x86 CPU不像您想象的那樣向後兼容,因爲如果我記得PUSH/POP存在一些錯誤和差異右)...