Kotlin Programming 2022 Spring - 期末專題 === ###### tags: `Kotlin 2022 Spring` `Kotlin` `2022 Spring` 使用 Kotlin 在 Android 上開發出類似 Wordle 的遊戲。 ![](https://i.imgur.com/IeGMU8x.png) ## Spec 1. 當程式執行之初時,**隨機**從字典選出一個字來讓玩家猜,**你必須把你選擇的詞輸出出來**,你可以顯示在畫面上或是用 Dialog 彈出。 2. 玩家可以猜測六次,如果六次都錯誤就不得再猜了,在此之前可以不斷的猜。 3. 當玩家猜測的字母位置正確,則輸出綠色;字母有出現過但位置不對,則輸出黃色;否則則輸出灰色。 4. 答案有重複出現的字母時: - 如果玩家猜的詞的該字母位置相同,則該位輸出綠色 - 如果玩家猜的詞的該字母位置不同,則該位置輸出黃色 - 該字母黃色出現的次數需等於在答案中出現的次數扣除綠色出現的次數,可以在任意合理位置輸出 - 例如如果正確答案是 AAAOO,玩家猜測 AXAAA - 則輸出結果爲 🟩⬛🟩🟨⬛ 或 🟩⬛🟩⬛🟨 5. 當玩家猜測正確(6 個綠色),就不能再猜了 6. 請使用此[文件](https://gist.githubusercontent.com/scholtes/94f3c0303ba6a7768b47583aff36654d/raw/d9cddf5e16140df9e14f19c2de76a0ef36fd2748/wordle-Ta.txt)作爲字典,參見[來源](https://gist.github.com/scholtes/94f3c0303ba6a7768b47583aff36654d)。 7. 你可以用任意方式來讓玩家輸入他所猜測的字,但要注意各種不合法輸入: - 輸入的長度必須恰好爲 5 - 僅能輸入大寫英文字母(你亦可以自動將輸入小寫轉換成大寫,反正結果必須以大寫表示) - 輸入的詞彙必須字典中 - 如果不滿足上述要求,要輸出錯誤訊息並且讓玩家重新輸入,且該次猜測不列入次數計算。 ## 提交 - 請使用螢幕錄影,不要用手機或相機對準螢幕錄影。 - 錄影必須有程式碼的解說以及測試遊玩的過程。 - 請試玩你的遊戲,並且將影片拍攝上傳到 YouTube,記得權限設定要讓助教可以看到 - 試玩遊戲過程必須包含: 1. 不在字典當中的字 2. 需要出現黃色、綠色、灰色三種顏色的判讀結果 3. 猜失敗 4. 猜成功 - 將專案壓縮成 zip 檔上傳到 e3,並附上 Youtube 影片鏈結 ![](https://i.imgur.com/YJm90p0.png)