freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于java的掃雷游戲論文(編輯修改稿)

2024-12-14 22:09 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 。某一個(gè)具體數(shù)字表示與其緊鄰的 8 個(gè)方塊中有多少個(gè)雷。用戶可以根據(jù)這些數(shù)字判斷是否可以打開某些方塊,并把認(rèn)為有地雷的方塊用小紅旗來標(biāo)識(shí)。如果某個(gè)數(shù)字方塊周圍的地雷全部標(biāo)記完,可以單擊鼠標(biāo)左鍵,將其周圍剩下的方塊挖開。 如果數(shù)字周圍地雷沒有全部標(biāo)記,在同時(shí)單擊鼠標(biāo)左右鍵時(shí),其他隱藏或未標(biāo)記的方塊將被按下一次,當(dāng)用戶將所有地雷挖出后,其余的非雷方塊區(qū)域都已經(jīng)打開,此時(shí)游戲勝利。在游戲過程中,一旦錯(cuò)誤地打開了雷方塊則游戲失敗,游戲結(jié)束;當(dāng)用戶標(biāo)識(shí)的地雷數(shù)超過程序的設(shè)定值,雖然打開了全部的其余方塊,游戲仍然不會(huì)結(jié)束。 掃雷游戲用例圖 碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 4 圖 21 掃雷游戲用例圖 Figure 21 Minesweeper Use Case Diagram 從上述掃雷游戲功能描述可以看出,整個(gè)掃雷游戲中,用戶所有的操作只有:設(shè)置游戲級(jí)別、開始游戲、掃雷和查詢統(tǒng)計(jì)信息四種操作。 掃雷游戲功能需求 本程序需要實(shí)現(xiàn)的主要功能有: ( 1)用戶可以自由選擇掃雷級(jí)別 點(diǎn)擊游戲按鈕,然后再點(diǎn)擊選項(xiàng),會(huì)彈出一個(gè)框,玩家可以選擇所玩模式,分為初級(jí),中級(jí),高級(jí)三個(gè)級(jí)別,初級(jí)是 9*9 個(gè)方格,中及時(shí) 16*16 個(gè)方格,高級(jí)是 30*30個(gè)方格,還有一個(gè)自定義,用戶可以自己定義 M*N 方格以及雷數(shù)。 ( 2)進(jìn)行掃雷游戲 游戲區(qū)包括 雷區(qū) 、地雷計(jì)數(shù)器(位于右下角,記錄剩余地雷數(shù))和 計(jì)時(shí)器 (位于左下角,記錄游戲時(shí)間),確定大小的矩形雷區(qū)中隨機(jī)布置一定數(shù)量的地雷,玩家需要盡快找出雷區(qū)中的所有不是地雷的方塊,而不許踩到地雷。 游戲的基本操作包括左鍵單擊( Left Click)、右鍵單擊( Right Click)兩種。其中左鍵用于打開安全的格子,推進(jìn)游戲進(jìn)度;右鍵用于標(biāo)記地雷,以輔助判斷。 左鍵單擊: 在判斷出不是雷的方塊上按下左鍵,可以打開該方塊。如果方塊上出現(xiàn)數(shù)字,則該數(shù)字表示其周圍 3 3 區(qū)域中的地雷數(shù)(一般為 8 個(gè)格子,對(duì)于邊塊為 5 個(gè)格子,對(duì)于角塊為 3 個(gè)格子。所以掃雷中最大的數(shù)字為 8);如果方塊上為空(相當(dāng)于用戶用例圖設(shè)置游戲級(jí)別開始游戲掃雷查詢統(tǒng)計(jì)信息碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 5 0),則可以遞歸地打開與空相鄰的方塊;如果不幸觸雷,則游戲結(jié)束。 右鍵單擊: 在判斷為地雷的方塊上按下右鍵,可以標(biāo)記地雷( 顯示為小紅旗)。重復(fù)一次或兩次操作可取消標(biāo)記(如果在游戲 菜單 中勾選了“標(biāo)記 (?)”,則需要兩次操作來取消標(biāo)雷)。 ( 3)具有計(jì)時(shí)功能,顯示用戶掃雷所用時(shí)間 當(dāng)點(diǎn)擊任意一個(gè)方塊時(shí)即開始游戲,計(jì)時(shí)器同時(shí)開始計(jì)時(shí),時(shí)間是一秒增加 1,當(dāng)游戲失敗時(shí),自動(dòng)停止計(jì)時(shí),并且在游戲最左下方顯示玩家掃雷所用總共時(shí)間。 ( 4)用戶可以通過右鍵點(diǎn)擊方塊來標(biāo)記自認(rèn)為是雷的方塊 當(dāng)用戶在方塊上面點(diǎn)擊右鍵 時(shí),方塊上會(huì)顯示一個(gè)小紅旗,并且游戲最右下方的雷數(shù)會(huì)增加 1,當(dāng)玩家掃雷過程中發(fā)現(xiàn)已經(jīng)有小紅旗的方格不是雷可以再次右鍵點(diǎn)擊此方塊,點(diǎn)擊第一個(gè),方塊上面的小紅旗會(huì)變成一個(gè)問號(hào),再點(diǎn)擊一次可以將問號(hào)去掉,同時(shí)游戲最下方雷數(shù)會(huì)自動(dòng)減去 1。 ( 5)統(tǒng)計(jì)功能 當(dāng)玩家完成一次掃雷后,軟件能夠分級(jí)別記錄,統(tǒng)計(jì)最短完成事件、已玩游戲次數(shù)、已勝游戲次數(shù)、獲勝率、最多連勝次數(shù)、最多連敗次數(shù)等信息,玩家可以打開來進(jìn)行查看,以及可以跟其他玩家進(jìn)行比較,可以用來進(jìn)行對(duì)戰(zhàn)。 ( 6)退出 可以用界面的關(guān)閉鍵結(jié)束游戲。 掃雷游戲界面需求 ( 1)游戲菜單 游戲菜單有開始游戲、游戲模式、信息統(tǒng)計(jì)、退出等 4 個(gè)子菜單。 設(shè)置游戲的級(jí)別,分為初中高三個(gè)游戲級(jí)別,初級(jí)是由 9*9 的方格組成,雷數(shù)為10,非雷數(shù) 71;中級(jí)由 16*16 的方格組成,排有 40 個(gè)雷,非雷數(shù)為 216;高級(jí)是由 30*30的方格組成,其中有 99 個(gè)雷,非雷數(shù)為 381; 自定義功能能夠讓玩家重新定義游戲的布局與雷數(shù); 標(biāo)記功能在排雷的時(shí)候來重要作用,通過標(biāo)記地雷,使客戶快速通關(guān),鼠標(biāo)右鍵 也可標(biāo)記地雷; 信息統(tǒng)計(jì),記錄玩家不同級(jí)別的最高得分; 碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 6 退出,也可以用界面的關(guān)閉鍵結(jié)束游戲。 ( 2)游戲區(qū)域 游戲區(qū)域由雷數(shù)、計(jì)時(shí)器和方塊區(qū)組成。 關(guān)于每個(gè)雷數(shù),每個(gè)級(jí)別對(duì)應(yīng)的雷數(shù)都不同,初級(jí)、中級(jí)、高級(jí)分別對(duì)應(yīng) 99 個(gè)雷。 在你翻開第一個(gè)方塊起,計(jì)算器就開始計(jì)時(shí),直到你成功排除。 掃雷游戲功能模塊 游戲在功能上分為 6 個(gè)模塊: ( 1) 游戲界面 ( 2) 布雷 ( 3) 鼠標(biāo)事件 ( 4) 地雷判斷 ( 5) 游戲勝利(結(jié)束) ( 6) 游戲失敗(結(jié)束) 掃雷游戲系統(tǒng)基本功能如圖 22 所示。 圖 22 掃雷游戲基本功能 Figure 22 Minesweeper basic functions 本章小結(jié) 本章通過多次玩掃雷游戲,熟練掌握游戲規(guī)則,認(rèn)識(shí)掃雷游戲,在此基礎(chǔ)上綜合分析掃雷游戲的功能,根據(jù)游戲功能,確定游戲的功能需求和界面需求,然后總結(jié)歸納了游戲的功能模塊。 掃 雷 游 戲游戲選關(guān)游戲布局掃雷游戲計(jì)時(shí)統(tǒng)計(jì)碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 7 碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 8 3 概要設(shè)計(jì) 概要設(shè)計(jì)的主要任務(wù)是把 需求分析 結(jié)果 轉(zhuǎn)換為 軟件結(jié)構(gòu) 和數(shù)據(jù)結(jié)構(gòu)。設(shè)計(jì)軟件結(jié)構(gòu)的具體任務(wù)是 : 將一個(gè)復(fù)雜系統(tǒng)按功能進(jìn)行模塊劃分、建立模塊的 層次結(jié)構(gòu) 及調(diào)用關(guān)系、確定模塊間的接口及人機(jī)界面等。數(shù)據(jù) 結(jié)構(gòu)設(shè)計(jì) 包括數(shù)據(jù)特征的描述、確定數(shù)據(jù)的結(jié)構(gòu)特性、以及數(shù)據(jù)庫(kù)的設(shè)計(jì)。顯然,概要設(shè)計(jì)建立的是目標(biāo)系統(tǒng)的邏輯模型,與計(jì)算機(jī)無關(guān)。 總體設(shè)計(jì) 系統(tǒng)的整體布局為: CardLayout 布局,采用菜單、按鈕、面板??等組件,菜單項(xiàng)主要有開始,開始游戲,難度選擇以及自定義,信息統(tǒng)計(jì),退出,按鈕的功能是重新開始游戲。 掃雷游戲的布局如圖 31 所示。 圖 31 掃雷游戲布局圖 Figure 31 Minesweeper game layout 程序主界面中部為 雷區(qū),雷區(qū)下面實(shí)時(shí)顯示游戲時(shí)間和剩余雷數(shù)。雷區(qū)為玩家的游戲區(qū)域。 程序啟動(dòng)后,初始化按鈕、菜單,根據(jù)用戶選擇的掃雷級(jí)別,生成雷區(qū)方格數(shù)量,隨機(jī)布雷的位置,計(jì)算每個(gè)方格中的雷數(shù),存儲(chǔ)在緩存區(qū),在界面中顯示雷數(shù),程序總體流程如圖 32 所示, 掃 雷 游 戲 布 局游 戲 時(shí) 間 雷 數(shù)新游戲統(tǒng)計(jì)信息選項(xiàng)退出碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 9 圖 32 總體流程圖 Figure 32 Overall flowchart of FIG. 功能分析 整個(gè)游戲可以分為四個(gè)功能模塊:界面模塊,負(fù)責(zé)接收用戶輸入,組織和顯示方格以及雷等;布雷模塊,負(fù)責(zé)隨機(jī)布雷,設(shè)置并記錄哪個(gè)方格為雷;計(jì)算雷數(shù)模塊,負(fù)責(zé)計(jì)算非雷方格周圍雷數(shù),并且將雷數(shù)保存;記錄掃雷信息模塊,記錄用戶掃雷的各種信息,并且保存。 開 始定 義 并 初 始 化 按 鈕 ,菜 單 等 事 件 處 理菜 單 按 鈕初級(jí)中級(jí)高級(jí)對(duì) 應(yīng) 模 式新游戲方格 是 否 踩 雷N結(jié) 束Y隨 機(jī) 布 雷 、 計(jì) 算方 格 中 的 雷 數(shù)碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 10 表 31 模塊劃分及其功能 Table 31 module division and function 模塊 功能 界面模塊 設(shè)置游戲等級(jí) 點(diǎn)擊方格 布雷模塊 隨機(jī)布雷 保存雷區(qū)位置 計(jì)算雷數(shù)模塊 計(jì)算方格周圍雷數(shù) 保存方格周圍雷數(shù) 記錄掃雷信息模塊 記錄掃雷信息 顯示掃雷信息 界 面 模 塊接 收 用 戶 輸 入布 雷 模 塊計(jì) 算 雷 數(shù) 模 塊記 錄 掃 雷 信 息 模 塊 圖 33 模塊之間的調(diào)用關(guān)系 Figure 33 calls between modules 模塊之間的調(diào)用關(guān)系如圖 33 所示。界面模塊通過接收用戶的輸入,如:掃雷級(jí)別或者雷區(qū)大小以及雷的數(shù)量等信息,用戶點(diǎn)擊開始后,布雷模塊開始隨機(jī)布署地雷的位置,記錄在緩存區(qū),計(jì)算雷數(shù)模塊計(jì)算每個(gè)非雷方格的地雷數(shù)量,并且記錄在緩存區(qū)中,初始化完成后,在界面中顯示地雷的數(shù)量。用戶第一次點(diǎn)擊雷區(qū)方格便開始計(jì)時(shí),掃雷游戲正式開始,掃雷結(jié)束后,統(tǒng)計(jì)最短完成事件、已玩游戲次數(shù)、已勝游戲次數(shù)、獲勝率、最多連勝次數(shù)、最多連敗次數(shù)等信息,以供查詢。 功能分配 整個(gè)程序的功能由 5 個(gè) java 類實(shí)現(xiàn), 5 個(gè)類的名稱以及主要功能見表 32,類的名稱及其功能表。 碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 11 表 32 類的名稱及其功能表 Table names and functions Table 32 Class 序號(hào) 名稱 功能 1 該 java 文件生成的類負(fù)責(zé)創(chuàng)建掃雷游戲程序主窗口。該類含有 main 方法,掃雷游戲從該類執(zhí)行。 2 負(fù)責(zé)對(duì)掃雷難度進(jìn)行設(shè)定,可以設(shè)置初級(jí)、中級(jí)和高級(jí)三個(gè)難度,也可以對(duì)難度進(jìn)行自定義設(shè)置,直接設(shè)置方格和雷的數(shù)量。 3 主要負(fù)責(zé)將玩家掃雷情況的統(tǒng)計(jì)信息以對(duì)話框的形式顯示。 4 主要負(fù)責(zé)在界面上顯示方格,可以定義方格的大小、顏色,設(shè)置背景圖片等。 5 主要負(fù)責(zé)在界面上顯示方格和方格上的標(biāo)記及其翻開后的數(shù)字、雷、炸開的雷等,還可以對(duì)自己所在位置的行列號(hào)進(jìn)行設(shè)置、存儲(chǔ)和查詢等功能。 算法思想 ( 1)隨機(jī)布雷 掃雷游戲要求在 M 行 N 列的方格游戲區(qū)隨機(jī)的部署 n 個(gè)雷,且 n 的取值應(yīng)小于 M和 N 的乘積。這可以在一張 M*N 的方格上通過均勻分布的隨機(jī)算法實(shí)現(xiàn)。其中 n 的方格是雷區(qū),剩下的方格是非雷區(qū)。游戲的目標(biāo)是盡可能快地找到所有的雷區(qū),而不踩到地雷。 Java 提供了實(shí)現(xiàn)隨機(jī)算法的類 Math,通過 Math 類的 random()方法這可以很方便的實(shí)現(xiàn)隨機(jī)布雷的功能。 ( 2)計(jì)算方格周圍雷數(shù) 每個(gè)方格周圍 8 個(gè)方格中雷的數(shù)量為方格周圍雷數(shù),用戶就是根據(jù)方格中顯示的方格周圍雷數(shù)綜合判斷該方格是否為雷,因此,方格周圍雷數(shù)的計(jì)算非常關(guān)鍵。 開發(fā)環(huán)境 Java 是由 Sun Microsystems 公司推出的 Java 面向?qū)ο蟪绦蛟O(shè)計(jì)語言(以下簡(jiǎn)稱Java 語言)和 Java 平臺(tái)的總稱。由 James Gosling 和同事們共同研發(fā),并在 1995 年正式推出。 Java 最初被稱為 Oak,是 1991 年為消費(fèi)類電子產(chǎn)品的嵌入式芯片而設(shè)計(jì)的。1995 年更名為 Java,并重新設(shè)計(jì)用于開發(fā) Inter 應(yīng)用程序。用 Java 實(shí)現(xiàn)的 HotJava碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 12 瀏覽器(支持 Java applet)顯示了 Java 的魅力:跨平臺(tái)、動(dòng)態(tài) Web、 Inter 計(jì)算。從此, Java 被廣泛接受并推動(dòng)了 Web 的迅速發(fā)展,常用的瀏覽器均支持 Javaapplet。另一方面, Java 技術(shù)也不斷更新。 Java 自面世后就非常流行,發(fā)展迅速,對(duì) C++語言形成有力沖擊。在全球云計(jì)算和移動(dòng)互聯(lián)網(wǎng)的產(chǎn)業(yè)環(huán)境下, Java 更具備了顯著優(yōu)勢(shì)和廣闊前景。 2020 年 Oracle 公司收購(gòu) Sun Microsystems。 常用的 java 開發(fā)環(huán)境是 Eclipse+JDK+tomacat,因?yàn)樽钪匾?Eclipse 開發(fā)工具是免費(fèi)開源的,所以這是大家選擇 Eclipse 開發(fā)工具大家 java 開發(fā)環(huán)境的主要原因,其次還有少部分人使用 jbulid 環(huán)境等。對(duì) java 初學(xué)者來說, Eclipse 使用簡(jiǎn)單,而且占用電腦資源也比較少。另外, jdk 不是版本高了就好,我們要用的是最穩(wěn)定,不是追求 最新最時(shí)尚的。大家都知道,新的東西容易出現(xiàn)不穩(wěn)定的因素,因?yàn)榧夹g(shù)方面也不是很成熟,容易出錯(cuò),初學(xué)者最應(yīng)該使用穩(wěn)定的工具,這樣開發(fā)的過程才不會(huì)出現(xiàn)因?yàn)殚_發(fā)環(huán)境帶來的問題影響我們學(xué)習(xí)的進(jìn)程。 本論文編寫程序時(shí)使用的就是 Eclipse。 Eclipse 是一個(gè)開放源代碼的、基于 Java的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是, Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具( Java Development Kit, JDK)。 本章小結(jié) 本章 根據(jù)對(duì)掃雷游戲的需求分析, 將 整個(gè)掃雷游戲軟件 按功能進(jìn)行模塊劃分、建立模塊的 層次結(jié)構(gòu) 及調(diào)用關(guān)系、確定模塊間的接口及人機(jī)界面等。數(shù)據(jù) 結(jié)構(gòu)設(shè)計(jì) 包括數(shù)據(jù)特征的描述、確定數(shù)據(jù)的結(jié)構(gòu)特性。 最后簡(jiǎn)單介紹了軟件的開發(fā)環(huán)境。 碼農(nóng)畢業(yè)設(shè)計(jì)下載網(wǎng): 13 4 詳細(xì)設(shè)計(jì) 界面設(shè)計(jì) ( 1)掃雷棋盤的布局設(shè)計(jì) 掃雷棋盤布局為: CardLayout 布局 , 每個(gè)按鈕表示一個(gè)方格,點(diǎn)擊方格即觸發(fā)按鈕的點(diǎn)擊事件。 圖 41 掃雷游戲主界面 Figure 41 Minesweeper main game interface ( 2)雷區(qū)的設(shè)計(jì) Brick類是繼承了 JPanel實(shí)現(xiàn)了 MouseListe
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1