填字遊戲 Anagram 計畫的自述文件 作者:Seth Cattanach 2017 年秋季
這個專案是字謎填字遊戲生成器的 C++ 實作。
透過執行提供的「填字遊戲」可執行檔(或使用給定的儲存庫檔案和Makefile 建立可執行檔),使用者可以輸入單字清單(最多20 個),程式將嘗試將每個單字放在板上。當指定輸入結束(CRTL-d 或“.”字元)時,程式將輸出三個項目:所有單字都正確放置的“解決方案”板,帶有由 ' 表示的空格的“拼圖”板。字符,以及解決謎題的線索列表。
謎題中的每條線索都是目標單字的變位詞。例如,給定的線索可能會給出一個坐標並讀取“GOCIND” - 解決這個字謎將產生單字“CODING”,該單字將被放置在給定的座標處。
使用者也可以使用文字檔案中已指定的單字清單作為命令列參數來執行可執行檔。例子:
./填字遊戲樣本.txt
這將繞過“手動單字輸入”,程式將立即生成並顯示填字遊戲。
要將程式的輸出儲存到文字文件,只需指定一個文件作為另一個命令列參數,程式就會將解決方案板、拼圖板和字謎線索儲存到指定的文件中。例子:
./crossword Samplewords.txt 輸出.txt
這將使用“samplewords.txt”中的輸入單字來運行“crossword”可執行文件,並將生成的填字遊戲儲存到“output.txt”
提供的 Makefile 允許使用者輕鬆編譯專案的原始程式碼。為此,只需在專案目錄中執行“make”即可。執行“make clean”以刪除在編譯/連結過程中建立的所有中間目標檔案以及可執行檔。