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

正文內(nèi)容

畢業(yè)論文-基于android操作系統(tǒng)的中國象棋設(shè)計【附詳細代碼(參考版)

2025-06-07 21:09本頁面
  

【正文】 武漢科技大學(xué)本科畢業(yè)設(shè)計 33 軟件所需的改進 此次 所做的中國象棋是基于人人對弈的,而且人人對弈僅限于單屏操作 ,在不同設(shè)備間進行對弈都不行。 ( 4)在游戲結(jié)束后,需要跳出提示是哪方勝利的消息,在程序中調(diào)試運行是沒有錯誤的,但在軟件的測試過程中,只要將一方的將或者帥吃掉之后,程序就會出現(xiàn) “意外停止,需強制關(guān)閉 ”的錯誤,試過幾種方法均不正確。出現(xiàn)這個問題的原因有多種,可能是 Android 的 SDK 是丟失,或者沒有導(dǎo)入 import , 亦或者是布局文件出錯或使用了非法的字符串,也有可能是 其他的錯誤。 就是說點擊屏幕后,要判斷現(xiàn)在輪到哪方走棋,所以要加一個標志變量, 其次就是判斷自己手指所點的位置,看是不是那一方的棋子,是就可以走棋。通過與別人交流之后,知道了出現(xiàn)這個問題原因是標志變量沒有設(shè)置對。出現(xiàn)這個問題分關(guān)鍵是一些函數(shù)的調(diào)用不對,特別是在 “中國象棋 ”這個按鈕上,點擊 “中國象棋 ”后需要跳到第二個界面進行選擇,在不同界面或者屏幕之間進行跳轉(zhuǎn)的話就需要新建一個信使 “Intent”, Intent 在 Android 開發(fā)中起著非常重要的作用,他是 Android 系統(tǒng)中的 一個載體或者是一個 信使,只有通過信使 “Intent”才能在不同的界面之間進行跳轉(zhuǎn)和切換 [11]。 武漢科技大學(xué)本科畢業(yè)設(shè)計 32 6 問題與 軟件的 改進 遇到的問題與解決方法 此次的設(shè)計,是關(guān)于 Android 軟件開發(fā)的,以前基本上沒有關(guān)于這方面的學(xué)習(xí)和應(yīng)用,所以說在做的過程當中遇到了很多的問題 ,但通過自己不斷的努力,很多問題都迎刃而解了 。每一步棋子所走的算法規(guī)則為 (以紅方走棋為例) : 武漢科技大學(xué)本科畢業(yè)設(shè)計 31 關(guān)于每一個棋子的走法規(guī)則實現(xiàn)詳見代碼附錄 。 棋盤和棋子的繪制也是在 GameView 類 中實現(xiàn)的, 棋盤和棋子的具體繪制過程如下 [10]: 武漢科技大學(xué)本科畢業(yè)設(shè)計 29 武漢科技大學(xué)本科畢業(yè)設(shè)計 30 棋子的算法 實現(xiàn) 棋子的走法規(guī)則是整個游戲玩法的核心,他定義了中國象棋的走法規(guī)則,該規(guī)則在 “Rule”類中實現(xiàn)。 棋子行走于棋盤上, 但是,并不是棋盤上的所有地方都能走,棋子能不能走?武漢科技大學(xué)本科畢業(yè)設(shè)計 28 怎樣走,其判斷的算法為 (流程圖如圖 ) : ( 1)點擊棋盤時,先判斷是紅方還是黑方走棋; ( 2)然后再判斷點擊棋盤的時候是否選中棋子,若沒有,則選中棋子; ( 3)選中棋子之后,在判斷所選棋子是 紅方的 棋子還是黑方的棋子; ( 4)若選中的是自己的棋子,則將光標移動到該棋子上 以提示玩家; ( 5)點擊屏幕走動棋子,在走動時先判斷所點擊位置是否符合走動規(guī)則,若不符合則不能走動 ,或者所走位置出了棋盤則也不能走動 ; ( 6)若符合棋子走動規(guī)則,則需判定該位置是否有棋子,若沒有棋子,則能走動; ( 7) 若該位置上有棋子,則要判斷該棋子是自己棋子還是對方棋子,若是自己 棋子,則該位置上不能走動,若是對方棋子則可以替換掉該棋子,即吃子; ( 8)吃子之后需判斷該棋子是否為帥或者將,若是帥或者將,則游戲結(jié)束。 由 圖 , 每一個數(shù)字所對應(yīng)的棋子為: 1——紅帥、 2——紅車、 3——紅馬、 4——紅炮、 5——紅士、 6——紅相、 7——紅兵、 8——黑將、9——黑車、 10——黑馬、 11——黑炮、 12——黑仕、 13——黑象、 14——黑卒。 ( 2)棋子 從圖 和圖 中 可以看出,上面其實就是一個虛擬的棋盤,然后上面放上了虛擬的棋子,即用不同的數(shù)字代表各個不同的棋子。上面這種情況是選擇黑方之后,把黑方的棋子置于下方。一般來說,棋子都是放在棋盤橫豎的交叉點上,所以我們可以用一組二維數(shù)組來實現(xiàn)棋盤的設(shè)計 [9]。每一個棋子都有不同的走法和移動范圍,那么下面就讓我們來詳細闡述一下他們的實現(xiàn)方法。 ( 4)還有 和其他一些文件都是關(guān)于 Android 的版本的配置文件。這是存放軟件所需要用到的一些資源文件以及軟件的一些布局文件。 ( 3) res 目錄。 ( 2) bin目錄。 比較特殊的一點是,他所定義的所有東西,他會生成一個 “.R”的文件存放,而且是系統(tǒng)自動生成的,不需要用戶進行任何修改。該目錄在工程中是不需要我們編寫的,但他在 Android 工程中尤為關(guān)鍵。 武漢科技大學(xué)本科畢業(yè)設(shè)計 26 工程中其他模塊的介紹 在工程的框架圖中我們看到,除了有幾個類外,還有其他的一些模塊,那么,這些模塊的具體作用又是什么呢?下面我們詳細來介紹。該類是走法的核心類,中國象棋中的 7 類棋子,共 32 枚,都在這個類中明確定義了相關(guān)的走法,不僅如此,他還定義了該棋子是對方的還是自己的,以及規(guī)定了每一方的地盤,即以河界為線。 顧名思義,此類就是定義了關(guān)于中國象棋的規(guī)則類。該類的主要代碼詳見附錄。 該類是整個程序的核心類,是整個主游戲的界面, 包括中國象棋的棋盤、棋子 、還有勝利時的顯示 ,以及玩家和對家的選擇和切換等等, 該界面繼承自 SurfaceView 并實現(xiàn)了 接口,其中包含了一個刷幀的線程類。 該類為棋子的一個走法類,包含是什么棋子(自己的或者是對方的),起始點的位置,目標點的位置,以及估值時所用到的 score。 詳細代碼見附錄。一是在進入軟件之后點擊 “中國象棋 ”時,會出現(xiàn)選擇項,是選擇紅方還是黑方,然后選擇好之后按 menu鍵進行游戲 ,然后他的功能就是選擇功能和menu 鍵的功能;另一個功能是進行游戲的初始化 。 在此次工程中,各個類的主要功能為: ( 1) Chess01Activity 類。 建立好之后的工程如 圖 所示: 圖 建立好之后的工程的各個類和模塊 武漢科技大學(xué)本科畢業(yè)設(shè)計 25 工程模塊的介紹 各個類主要實現(xiàn)的功能 在軟件的開發(fā)中,一個軟件需要實現(xiàn)多個不同功能,為了便于開發(fā)和檢查錯誤,增強程序的可移植性,通常我們會把每一個功能放在一個類中或者一個包中。 此為游戲在開始前所必須實現(xiàn)的功能?,F(xiàn)在, 就建立一個 “中國象棋人人對弈 ”的工程,來實現(xiàn)中國象棋的設(shè)計。其實現(xiàn)代碼為: 武漢科技大學(xué)本科畢業(yè)設(shè)計 22 中國象棋 選項界面 在第一個界面中,點擊 “中國象棋 ”即進入第二個選擇界面,在這里,用戶可以選擇操作紅方還是黑方,這樣我們可以添加 兩個 RadioButton來實現(xiàn)兩者的選擇功能,其主要的代碼為: 界面的運行效果圖 ,開始歡迎界面如圖 所示,幫助窗口如圖 所示,退出選項如圖 所示,開始前選擇界面如圖 所示。在 Android 開發(fā)中,我們可以添加一個 “TextView”文本框,并將此文本框的內(nèi)容設(shè)置成循環(huán)滾動的形式來達到顯示歡迎提示內(nèi)容,其主要代碼如下: ( 2)設(shè)置 “中國象棋 ”、 “幫助 ”、 “退出 ”按鈕 。 ( 5)當游戲結(jié)束,即吃掉了對方的帥(將)時,就有彈出紅方或者黑方勝利的消息 ,然后游戲結(jié)束。 ( 4)選好 “紅方 ”或者 “黑方 ”之后,即正式的進入到了游戲當中。 ( 3)點擊 “中國象棋 ”按鈕,進入開始游戲選項 ,進入之后有第二級菜單,里面有 “紅方 ”與 “黑方 ”選項按鈕,并提示用戶選擇。 設(shè)計的主要實現(xiàn)的功能如下: ( 1)進入軟件, 首先有歡迎提示, 這是體現(xiàn)人性化細節(jié)的一方面。在 Android組件中,提供了很多布局方法,開發(fā)者可以很輕松的入手,并且設(shè)計出自己理想的界面。 在 Android 軟件開發(fā)中,界面美化也是很重要的,這 是體現(xiàn) 人性化 的一點。而相比于雙屏人人對弈來說,我的設(shè)計又不需要實現(xiàn)藍牙或者WiFi 的通訊連接功能,也不需要聯(lián)網(wǎng)對弈。 武漢科技大學(xué)本科畢業(yè)設(shè)計 19 4 中國象棋 軟件的 主要功能 和界面布局 中國象棋軟件實現(xiàn)的主要功能 此次設(shè)計的中國象棋為人人對弈版,而且是單屏設(shè)計,所以所要實現(xiàn)的功能比較簡單,設(shè)計也不是很復(fù)雜。這在算法實現(xiàn)時,就需要判斷是過河前還是過河后,并且必須設(shè)定為只能往前走。在過河前,兵(卒)只能向前直走,而且只能走一步,還不能夠后退。 ( 7)兵(卒)的走法: 武漢科技大學(xué)本科畢業(yè)設(shè)計 18 圖 兵(卒)的走法 如圖 所示為兵(卒)的走法。但在吃子時,炮吃子需要在自己和被吃子的中間有一個棋子作為炮架子時,才能夠轟掉對方的棋子,沒有這個炮架子時則只能走棋不能吃子,當然這個炮架子可以是對方的棋子,也可以是自己的棋子。 ( 6)炮的走法: 圖 炮的走法 如圖 所示 。 ( 5)車的走法 : 武漢科技大學(xué)本科畢業(yè)設(shè)計 17 圖 車的走法 如圖 所示,在整個中國象棋中,車的走法是最自由的,同時也是殺傷力最大的。但是有一種特殊情況,就是如果馬腳處有棋子的話,則馬就不能走這個日字,如圖,紅色圈內(nèi)就是蹩馬腿的情況,則此時馬就不能走到 1 的位置。 ( 4)馬的走法: 圖 馬的走法 馬的走法如 圖 所示。但有些特殊的是,如果象所走的斜對角的中間有棋子(象眼),如圖中的紅色圈中的棋子,則相(象)就被堵住了而不能走那個方位的地方(如圖中 4 位置就不能走) ,在實現(xiàn)時就需要先判斷 象眼處 是否有棋子 。士(仕)的走動范圍也是在九宮格之內(nèi),但士(仕)只能走斜線,不能橫豎走,而且每次也只能走一武漢科技大學(xué)本科畢業(yè)設(shè)計 16 步,所以,由圖可以看出,士(仕)的走動范圍實際上就只有 5 個位置。一旦帥或者將被吃掉則游戲結(jié)束。 帥和將都是是雙方的首腦和指揮者,同時下棋雙方的最主要目標也是將死對方的帥或?qū)ⅰ? 中國象棋的 走法 分析 明白了中國象棋的走法與規(guī)則之后,就需要來分析怎樣在棋盤上實現(xiàn)中國象棋的這些走法。 ( 4)勝負的判定 對局時 ,一方出現(xiàn)下列情況之一 ,就算輸棋 ,對方得勝 : ① 帥 (將 )被對方 將死 ,即被對方將軍卻無法應(yīng)將; ② 帥 (將 )被 將軍 ,無法避免地同對方將 (帥 )直接對面; ③ 被 困斃 ,即雖未被對方將軍,本方卻已無棋可走動; 武漢科技大學(xué)本科畢業(yè)設(shè)計 15 ④ 封棋著法有誤; ⑤ 走棋違犯禁例 ,應(yīng)當變著而不變,即一方長將不變,長將一方算輸; ⑥ 在同一局棋中 ,單方面出現(xiàn)第三次 違例 ; ⑦ 自己宣布認輸; ⑧ 因違犯紀律被判輸棋。 ( 3)吃子 任何棋子走動時,如果目標位置上有對方的棋子,就可以把對方的棋子拿出棋盤,再換上自己的棋子(即 吃子 )。如果在要去的方向有別的棋子擋住,馬就無法走過去,俗稱 蹩馬腿 。 馬:馬走動的方法是一直一斜,即先橫著或直著走一格,然后再斜著走一個對角線 ,俗稱 馬走日 。因此,一車可以控制十七個點,故有 一車十子寒 之稱。相(象)的活動范圍限于 河界 以內(nèi)的本方陣地,不能過河,且如果它走的 田 字中央有一個棋子,就不能走,俗稱 塞象眼 。 相(象):相(象)的主要作用是防守,保護自己的帥(將)。 仕(士):仕(士)是帥(將)的貼身保鏢,它也只能在九宮內(nèi)走動。它只能在 九宮 之內(nèi)活動,可上可下,可左可右,每次走動只能按豎線或橫線走動一格。雙方各走一著,稱為一個回合。中國象棋的規(guī)則和判定方法為: ( 1)對局時,由執(zhí)紅棋的一方先走,雙方輪流各走一著,直至分出勝、負、和,對局即終了。 圖 中國象棋 的 棋盤 和棋子 ( 2) 棋子 中國象棋的棋子共三十二個,分為紅方和黑方兩組,各十六個,由對弈雙方各執(zhí)一組,兵種是一樣的,分為七種: 紅方:帥、仕、相、車、馬、砲、兵 黑方:將、士、象、車、馬、炮、卒 其中帥與將、仕與士、相與象、兵與卒的作用完全相同,僅僅是為了區(qū)分紅棋和黑棋。中間第五、第六兩橫線之間未畫豎線的空白地帶,稱為 河界 ,整個棋盤就以 河界 分為相等的兩部分;兩方將帥坐鎮(zhèn)、畫"米 字方格的地方,叫做 九宮 。 武漢科技大學(xué)本科畢業(yè)設(shè)計 13 3 中國象棋的走法規(guī)則 與實現(xiàn) 分析 中國象棋的走法規(guī)則 棋盤和棋子介紹 中國象棋是由棋盤和棋子組成的,下面就詳細的介紹這兩部分。 一般而言,一個應(yīng)用程序開發(fā)好之后,都需要把他弄到移動設(shè)備上進行安裝測試,那么應(yīng)用程序怎樣把他弄到手機上呢?方法其實很簡單,只需要打開自己手機的開發(fā)人員調(diào)試功能,然后將其用 USB 連接
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1