版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、漢諾塔程序設(shè)計漢諾塔程序設(shè)計一、總功能概述(1)設(shè)計Hannoi塔中有三個座,名字為A、B和C。初始狀態(tài)是A座上有3個大小不等的盤子,這些盤子從座底到座頂按著大小順序依次擺放在A座上。用戶可以用鼠標來移動盤子、釋放鼠標來放置該盤子;(2)程序要求用戶在移動盤子過程中,不允許把大盤子放置在小盤子的上面,用戶最終要完成的是把A座上的全部盤子移動到B座或C座上;(3)用戶可以通過Hannoi塔界面提供的菜單來選擇初級、中級、高級和自定義四個級
2、別。初級級別A座上有3個大小不等盤子、中級級別A座上有四個大小不等盤子、高級級別A座上有大小不等盤子、自定義級別A座用戶可以任意輸入盤子數(shù)目:(4)用戶可以通過單擊Hannoi塔界面上提供的按鈕,讓程序自動完成把A座上的盤子全部移動到C座上;(5)用戶在移動盤子的過程中,可以隨時單擊Hannoi塔界面上提供的按鈕,重新開始當前的級別;(6)有計時功能,即顯示用戶完成移動盤子所花費的時間;(7)用戶可以設(shè)置最大和最小盤子的大??;二、分功能
3、模塊概述1AutoMoveDisc模塊:聲明盤子的數(shù)量,塔點,塔的名字,容器,文本框,以及用到的一些按鈕,定義設(shè)置移動步驟的方法,定義操作演示的方法,最后聲明AutoMoveDisc這個方法并且實現(xiàn)AutoMoveDisc這個方法。2.Disc模塊:Disc類的主要功能是建立一個類disc,然后通過調(diào)用盤子的設(shè)置數(shù)量、獲取數(shù)量以及點的設(shè)置數(shù)量、獲取數(shù)量來實現(xiàn)這個程序的功能。3.HleMouse模塊:HleMouse類實現(xiàn)接口鼠標監(jiān)視器和
4、鼠標動作監(jiān)視器處理鼠標事件,在此模塊中,實現(xiàn)了對鼠標操作從而完成漢諾塔的游戲。在這個類中,構(gòu)造了函數(shù)mousePressed點擊鼠標鍵事件、mouseDragged拖動鼠標事件、mouseReleased放開鼠標鍵事件,并對其構(gòu)造函數(shù)進行實現(xiàn),接口并調(diào)用了mouseMoved移動鼠標事件、mouseEnter鼠標進入組件事件、mouseExited鼠標離開組件事件、mouseClicked單擊鼠標事件。4.HannoiWindow模塊:
5、HannoiWindow類的主要工功能是實現(xiàn)程序的窗口化。用的是BdLayout布局,采用了菜單、按鈕、面板等組件,菜單主要包括選擇級別,盤子個數(shù),設(shè)置大小等功能,它分別調(diào)用了塔的名字TowerName(A,B,C)、設(shè)置盤子的個數(shù)SetAmountOfDisc以及大小、這個游戲可以選擇的級別menuGrade(初、中、高),按鈕的功能包括重新開始(renew)和自動演示(autoButton)以及播放、暫停、演示、關(guān)閉等。5.Towe
6、r模塊本模塊是有關(guān)Tower的程序,主要是塔的制作過程。2.DiscUML類圖3.HleMouseUML類圖HleMousepointApointBpointC:TowerPoint[]startPointendPoint:TowerPointleftXleftYx0y0:intmovecountTime:boolaencon:ContainerHleMouse(Containercon)setPointA(TowerPoint[]po
7、intA):voidsetPointB(TowerPoint[]pointB):voidsetPointC(TowerPoint[]pointC):voidmousePressed(MouseEvente):voidmouseMoved(MouseEvente):voidmouseDragged(MouseEvente):voidmouseReleased(MouseEvente):voidmouseEnter(MouseEvente)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 漢諾塔課程設(shè)計--漢諾塔演示程序設(shè)計
- 漢諾塔課程設(shè)計--基于vc++的漢諾塔游戲設(shè)計
- 漢諾塔演示
- 漢諾塔問題課程設(shè)計
- 《新漢諾塔》課程設(shè)計
- 漢諾塔hanoi問題
- 3done實體設(shè)計案例漢諾塔
- 基于java漢諾塔游戲設(shè)計與實現(xiàn)
- 3done實體設(shè)計案例漢諾塔
- 漢諾塔圖性質(zhì)研究.pdf
- 數(shù)據(jù)結(jié)構(gòu)編程-漢諾塔
- 數(shù)據(jù)結(jié)構(gòu)編程-漢諾塔
- mfc課程設(shè)計報告—漢諾塔演示系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--漢諾塔游戲
- 漢諾塔java課程設(shè)計說明書
- 漢諾塔問題的非遞歸新解法
- vb程序設(shè)計例題-程序改錯程序填空程序設(shè)計
- 程序設(shè)計教案 程序設(shè)計——數(shù)據(jù)結(jié)構(gòu)
- 最簡單的c程序設(shè)計――順序程序設(shè)計
- 自動程序設(shè)計
評論
0/150
提交評論