Pocket Monsters口袋怪獸 演算法實現

蝴蝶自由發表於2024-03-20

作業1.1-口袋怪獸關鍵資訊您的任務這是一項個人開卷家庭作業。它涉及到與一個壞掉的遊戲進行互動歸結為一組程式設計問題。我們提供了一小組測試,允許您檢查解決方案的正確性。然而,這些測試並不是詳盡無遺的,透過測試也不是保證滿分。您應該執行自己的測試,以確保您的解決方案已編碼正確地程式碼腳手架可以在這裡找到。不要分叉儲存庫。請改用“使用模板”按鈕。FORKS可能在的任何人違反學術誠信並承擔相應的處罰。標記值這項作業值100分。50分代表程式碼。個人50分將在第6周進行的理論知識筆試到期日作業的程式碼部分將於第5周星期四(2024年3月28日下午11.55墨爾本)到期克萊頓學生上課時間,馬來西亞學生上課時間下午11點55分)對於馬來西亞學生-由於我們不能延長馬來西亞學生的截止日期,任何在截止日期的最後3小時內提交的材料將被標記為Ed遲到,但不會被認為遲到了。請忽略此訊息。屈服作業的最終提交將透過教育部完成。有關如何提交評估標準請檢查評估標準的準則逾期罰款在長達一週的時間內,每個日曆日或其部分時間扣減10%截止日期後超過7個日曆日的提交將獲得零(0)和否的分數將提供評估反饋。生成人工智慧工具不能用於此評估任務:在此評估中,您不得使用生成人工智慧(AI)生成與評估任務有關的任何材料或內容。歡迎使用A1.1-口袋妖怪!歡迎來到神奇寶貝的奇妙世界。Pokemon Battles是一款在團隊之間進行的遊戲反對口袋妖怪,試圖看看誰是最棒的,就像從來沒有人一樣!口袋妖怪有攻擊和防禦等屬性,可以進化成其他怪物,並升級。在這項任務中,你將致力於口袋妖怪戰鬥遊戲的許多功能還應該測試你應用前4周所涵蓋概念的能力演算法基礎。但是,這太容易了!為了確保您演示了本單元中涵蓋的所有主題有以下限制。禁止使用python內建的列表、字典、集合等。使用此類結構明渠受影響任務的測試用例和方法標記。但是,您可以使用固定大小元組。(也請閱讀論壇中的常見問題公告。)在類的定義之外訪問data_structures類的內部是嚴格禁止(例如,您不能訪問CircularQueue的.array,只能與互動其方法)您的程式碼不僅需要具有功能性,還需要是最有效的選擇最適合這個問題。一般來說,如果有一種選擇是有效的,並且要求更少程式碼,不選擇這個將丟失標記(所以當佇列也會工作記住所有這些,一定要閱讀下一張幻燈片中的一些小花絮,我們希望你享受這項任務!重要資訊、提示和技巧重要資訊、提示和技巧在您開始使用該應用程式之前,請閱讀這些提示和技巧,代 寫Pocket Monsters以確保您不會迷路,否則就會失去任何愚蠢的分數!常見錯誤/建議除了任務1之外,您實現的每個方法都需要在docstring。這應該包括最佳和最壞情況分析!一定要說明你的變數您可以在類定義的頂部包含一個catch-all,以避免為一堆方法。“除非另有說明,否則此類中的所有方法都是O
(1)最佳/最差的案例"你在Ed中被標記為正確。你的程式碼是否在本地透過並不重要,它需要透過教育。如果你在實現平等方面遇到困難,請聯絡助教。請注意使用的特定Python版本,不要匯入任何其他第三方模組。將程式碼分成最多20行的小方法,如果找很多重複的工作。執行測試要執行測試,請呼叫python
3 run_tests.py。請注意,您可以使用第二個論點。例如,執行python
3 run_tests.py 1將僅從tests/test_task1檔案。注意:這將繞過透過手動輸入任務編號的需要促使口袋妖怪戰鬥基本介紹基本前提精靈寶可夢有名無實的口袋妖怪是口袋妖怪戰鬥的中堅力量。有不同型別的口袋妖怪每個都有自己的名字和統計資料,一種型別的口袋妖怪可以進化成另一種型別當他們升級時,口袋妖怪。口袋妖怪有以下資訊:健康數量防禦型別戰鬥力(攻擊點)名稱進化線經驗速度這些統計資料將在未來的任務中涵蓋,但以下是其中每一項的簡要概述:1.生命值-這是一個統計資料,可以讓你知道口袋妖怪在暈倒前有多少生命值。一旦口袋妖怪受到攻擊,它就會失去一些生命值,一旦生命值降至0,口袋妖怪昏厥2.等級-這個資料指的是口袋妖怪的等級。一旦一個口袋妖怪與另一個戰鬥讓它變得微弱,口袋妖怪的等級上升了1,提升了它的大部分其他屬性。3.防禦-這個屬性是指口袋妖怪受到攻擊時提供的抵抗力。當我們討論戰鬥時,你會了解更多關於這個資料的使用。4.型別-口袋妖怪的型別會影響它對另一個口袋妖怪造成的傷害。你會在任務1中瞭解更多資訊。5.戰鬥力-這個資料是指一個口袋妖怪在戰鬥的過程。6.名稱-這是指口袋妖怪的名稱7.進化系列-這是這一系列口袋妖怪的進化名稱列表。此列表的長度可能會有所不同,因為許多口袋妖怪不會進化,在某些情況下進化一次甚至兩次!8.經驗-這個資料指的是口袋妖怪的經驗。口袋妖怪獲得經驗從與另一隻口袋妖怪的戰鬥中解脫出來。9.速度-這個資料指的是口袋妖怪的速度。速度決定口袋妖怪的速度口袋妖怪攻擊速度越快。什麼是PokemonBase?因為有70多個口袋妖怪需要定義,我們不想寫出所有的類個別地。特別是,因為幾乎所有口袋妖怪的邏輯都是一樣的,所以我們必須所做的就是在PokemonBase中定義這個共享邏輯。然後Pokemon.py建立不同的類從PokemonBase繼承,並實現底部的所有抽象類方法pokemon_base.py。例如,您可以在不接觸作業的情況下執行以下操作,而且效果很好:來自口袋妖怪進口Charmander,Gastlycharmander=charmander()gastly=gastly()print(charmander.get_name())#charmanderprint(charmander.get_poketype())#poketype。火災print(gastly.get_evolution())#[“gastly”、“Haunter”、“Gengar”]團隊口袋妖怪被組合成團隊,用於戰鬥。有多種選擇團隊,如團隊模式和選擇模式,但這些將在任務3中詳細介紹。擊球擊球是以回合制的方式在兩支隊伍之間進行的,每一個“回合”都包括一個動作來自兩個團隊。在一場戰鬥中,每支隊伍都會選擇一隻目前在場上的口袋妖怪,而每個團隊的其他成員都在等待幫助。作戰解剖學在一場戰鬥中,回合不斷髮生,直到一支或兩支隊伍中沒有更多的口袋妖怪(在隊伍中以及在球場上)。如果場上的一個口袋妖怪被殺死(生命值<=0),那麼團隊中的一個新口袋妖怪是在轉彎結束時發出。轉向解剖學在戰鬥回合中,每支隊伍選擇一個動作,攻擊、特殊或特警。如果選擇SWAP

相關文章