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

正文內(nèi)容

網(wǎng)絡(luò)中國象棋設(shè)計(jì)-本科畢業(yè)論-免費(fèi)閱讀

2025-07-09 03:15 上一頁面

下一頁面
  

【正文】 vector 是動(dòng)態(tài)空間,隨著元素的加入它的內(nèi)部會(huì)自行擴(kuò)充空間 [8]。 電子科技大學(xué)學(xué)士學(xué)位論文 26 表 42 棋子編碼表 編號(hào) 二進(jìn)制 紅方 編號(hào) 二進(jìn)制 黑方 0 000000 帥 16 010000 將 1 000001 車 17 010001 車 2 000010 車 18 010010 車 3 000011 馬 19 010011 馬 4 000100 馬 20 010100 馬 5 000101 炮 21 010101 炮 6 000110 炮 22 010110 炮 7 000111 士 23 010111 仕 8 001000 士 24 011000 仕 9 001001 相 25 011001 象 10 001010 相 26 011010 象 11 001011 兵 27 011011 卒 12 001100 兵 28 011100 卒 13 001101 兵 29 011101 卒 14 001110 兵 30 011110 卒 15 001111 兵 31 011111 卒 表 43 棋子移動(dòng)信息編碼格式表 值 0 0 1 1 fid tid fx fy tx ty 長度 1 1 1 1 6 6 4 4 4 4 下面對(duì)棋子的操作信息進(jìn)行編碼,編碼格式是: 0010 + 12bit 類型編碼 + 16bit 操作編碼,一共也是 32bit。 第四章 詳細(xì)設(shè)計(jì)與編碼實(shí)現(xiàn) 25 表 41 棋盤坐標(biāo)二進(jìn)制表示表 Y X 0000 0001 0010 0011 0100 0101 0110 0111 1000 0000 (0,0) (1,0) (2,0) (3,0) (4,0) (5,0) (6,0) (7,0) (8,0) 0001 (0,1) (1,1) (2,1) (3,1) (4,1) (5,1) (6,1) (7,1) (8,1) 0010 (0,2) (1,2) (2,2) (3,2) (4,2) (5,2) (6,2) (7,2) (8,2) 0011 (0,3) (1,3) (2,3) (3,3) (4,3) (5,3) (6,3) (7,3) (8,3) 0100 (0,4) (1,4) (2,4) (3,4) (4,4) (5,4) (6,4) (7,4) (8,4) 0101 (0,5) (1,5) (2,5) (3,5) (4,5) (5,5) (6,5) (7,5) (8,5) 0110 (0,6) (1,6) (2,6) (3,6) (4,6) (5,6) (6,6) (7,6) (8,6) 0111 (0,7) (1,7) (2,7) (3,7) (4,7) (5,7) (6,7) (7,7) (8,7) 1000 (0,8) (1,8) (2,8) (3,8) (4,8) (5,8) (6,8) (7,8) (8,8) 1001 (0,9) (1,9) (2,9) (3,9) (4,9) (5,9) (6,9) (7,9) (8,9) 有了對(duì)棋盤位置的編碼和棋子的編碼,就可以對(duì)一步棋子移動(dòng)進(jìn)行編碼。 X 的取值范圍為{ 0、 8}, Y 的取值范圍為{ 0、 9}。在此就詳細(xì)說明一下是怎么實(shí)現(xiàn)的。這樣做有許多缺點(diǎn),一是只思考一步,沒有考慮多步,二是評(píng)分是死的,不能很好地適應(yīng)棋局的變化,三是沒有考慮獲勝的條件是吃掉對(duì)方的將或帥。 復(fù)盤功能的設(shè)計(jì) 復(fù)盤功能就是將棋譜文件中的信息一步步演示出來,就相當(dāng)于回放下棋過程。當(dāng)用戶點(diǎn)擊保存按鈕時(shí),會(huì)把棋譜模塊中保存的棋譜信息寫入文件,一個(gè)擴(kuò)展名為 txt 的第三章 概要設(shè)計(jì) 21 文件就是文本棋譜,另一個(gè)擴(kuò)展名為 ccm的文件就是二進(jìn)制棋譜。 檢測(cè)功能的設(shè)計(jì)。言和按鈕在功能按鈕模塊,當(dāng)點(diǎn)擊它時(shí),按鈕模塊會(huì)把這個(gè)信息告訴調(diào)度中心,由調(diào)度中心做出處理。 認(rèn)輸功能的 設(shè)計(jì)。如果兩個(gè)標(biāo)志都顯示開始,則開始游戲,否則維持狀態(tài)不變。這些信息包括各個(gè)棋子的位置信息、己方是紅方還是黑方信息、按鈕的狀態(tài)信息、棋譜信息以及控制游戲流程的一些信息等。 在這個(gè)系統(tǒng)中信息分為兩類,分別是聊天信息和下棋信息,而下棋信息又分為兩類,分別是移動(dòng)棋子信息和新建、悔棋、交換等操作信息。在網(wǎng)絡(luò)應(yīng)用層用的是自己設(shè)計(jì)的協(xié)議,這個(gè)協(xié)電子科技大學(xué)學(xué)士學(xué)位論文 18 議會(huì)在下一章詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)里面詳細(xì)論述,在這里只是簡要說明:將下棋信息編碼成 32 位無符號(hào)整數(shù),并在前面加上不同的標(biāo)志以區(qū)別下棋信息和聊天信息,其中下棋 信息包括棋子的移動(dòng)信息和悔棋、認(rèn)輸、交換等功能的信息,它們都被唯一編碼。因?yàn)榫退悴捎镁W(wǎng)絡(luò)連接通信模式,也需要其中一個(gè)建立服務(wù)器,另一個(gè)進(jìn)行連接。該功能的數(shù)據(jù)流圖如圖 319 所示。如圖 316 所示。如圖312 所示。如圖 38 所示。如圖 34 所示。 ( 9) 服務(wù)器模塊( ChessServer),建立服務(wù)器。 ③功能按鈕模塊( PushButtonWidget),顯示開始、悔棋等功能按鈕。電子科技大學(xué)學(xué)士學(xué)位論文 10 第三章 概要設(shè)計(jì) 中國象棋的模塊設(shè)計(jì) 根據(jù)系統(tǒng)的功能需求和實(shí)際情況,系統(tǒng)的模塊劃分如圖 31 所示。對(duì)于一種棋子有兩個(gè)的棋子來說,都可以用“前”和“后”加以區(qū)分,但對(duì)于兵或卒來說,各有 5 個(gè)棋子,“前”和“后”就無法表示了,此時(shí)可以用“前”、“中前”、“中”,“中后”和“后”表示,若只一個(gè)字就再補(bǔ)上兵或卒所在的縱線即可。棋譜中的每一步都有四個(gè)字組成,詳細(xì)情況如下: ( 1) 第一個(gè)字一般是棋子的名字,如“炮”、“馬”等。檢測(cè)網(wǎng)絡(luò)連接是否正常,是否能和對(duì)方通信。 ( 2) 一方申請(qǐng)言和,另一方不 同意,則言和失敗,維持當(dāng)前狀態(tài)不變。關(guān)于悔棋功能的具體描述如下: ( 1) 一方申請(qǐng)悔棋,另一方同意,則悔棋成功,棋子回到原位。 開始。另外,在顯示聊天信息的時(shí)候,在最前面加上當(dāng)前時(shí)間,這樣便知道是什么時(shí)候收到的信息。因?yàn)樯厦嬉呀?jīng)說了是網(wǎng)絡(luò)連接的通信,聊天信息可以直接發(fā)送給對(duì)方而不用經(jīng)過中間服務(wù)器的中轉(zhuǎn)。當(dāng)用戶想要進(jìn)行網(wǎng)絡(luò)對(duì)戰(zhàn)時(shí),只要一方建立服務(wù) 器,另一方進(jìn)行連接,由此雙方之間可以進(jìn)行通信,交換數(shù)據(jù)。 ( 4)運(yùn)行環(huán)境: Windows XP 以及更高版本 Windows。 ( 3)網(wǎng)絡(luò)通信采用 TCP 協(xié)議。網(wǎng)絡(luò)象棋就把傳統(tǒng)和現(xiàn)代兩者結(jié)合在一起了,使我們能夠通過 現(xiàn)代技術(shù)來體驗(yàn)古人對(duì)弈的樂趣,使得傳統(tǒng)文化得到繼承和發(fā)揚(yáng),吸引更多人投入到這項(xiàng)運(yùn)動(dòng)中來。比如“中國象棋大師”、“象棋旋風(fēng)”和“象棋巫師”等有人機(jī)對(duì)戰(zhàn)的功能。 中國象棋不僅在中國國內(nèi)廣受歡迎,在東亞和東南亞許多國家也有許多人愛好象棋。 對(duì)于中國象棋來說,要想獲得最后的勝利,不能僅僅憑借所謂的運(yùn)氣。但可以確 定的是在唐代已經(jīng)基本成型,到宋代已基本和現(xiàn)代無異,到了明代把一方的“將”改名為“帥”,這和現(xiàn)代中國象棋就一樣了。 關(guān)鍵詞:中國象棋;網(wǎng)絡(luò)對(duì)戰(zhàn);人機(jī)對(duì)戰(zhàn) ABSTRACT ii ABSTRACT In recent years, with the rapid development and popularization of the Inter, more and more people begin to spend their recreational time online. In order to carry forward the traditional culture and to make more people enjoy the traditional Chinese chess game, this design uses the crossplatform Qt as a development framework, with modular design method and objectoriented programming ideas through the reasonable design of data structure and work munication method, a Chinese chess game which contains a number of functions, such as the creation of a new round of chess game, surrender, undo, peacemaking, the exchange of red and black oriented pieces, the display and saving of chess manuals, replays, multiplayer as well as single player mode can be materialized. Key words: Chinese chess。 總的來說,中國象棋共有 7 種棋子,它們都有不同的走法。到了現(xiàn)代,中國象棋正式成為國家體育項(xiàng)目之一,每年都有一些全國電子科技大學(xué)學(xué)士學(xué)位論文 2 大賽在舉行,比如“全國象棋錦標(biāo)賽”和“全國象棋等級(jí)賽”等?,F(xiàn)在比較有名的軟件就是 游戲中的“中國象棋”,它不僅提供了一個(gè)使千里之隔的兩人能夠下棋的平第一章 緒論 3 臺(tái),還增加了積分、等級(jí)、道具等功能,大大的增加了趣味性,使 得下棋變得更方便有趣了。引擎和界面之間的協(xié)議是中國象棋通用引擎協(xié)議 (Universal Chinese Chess Protocol,簡稱 UCCI),通過這個(gè)協(xié)議界面和引擎之間就可以通信 [3]。 ( 2)圖形界面采用 Qt 編寫。 開發(fā)平臺(tái)和工具 ( 1)操作系統(tǒng): Windows 7, 32 位。 這些提示信息可以方便用戶了解當(dāng)前的一些狀況,使用戶可以容易地判斷和處理相關(guān)問題。 ( 4) 如果連接失敗或者連接中斷,就關(guān)閉程序并重啟,檢測(cè) IP 地址和端口號(hào)是否有誤,再次進(jìn)行連接。 ( 2) 對(duì)于 另一方來說,同樣的道理。當(dāng)在一盤棋結(jié)束的時(shí)候或者在下棋的過程中,一方可以請(qǐng)求新建棋局的請(qǐng)求,只要另一方同意,即可開始新一盤棋局。當(dāng)雙方都準(zhǔn)備就緒時(shí)才能開始下棋 。 言和。具體描述如下: ( 1) 一方申請(qǐng)交換,另一方同意,則雙方交換紅黑成功。關(guān)于棋譜的介紹請(qǐng)看后面的章節(jié) 。棋子若是沿直線進(jìn)或退,則這個(gè)字就是進(jìn)或退的步數(shù)。 復(fù)盤 復(fù)盤功能就是用程序打開棋譜文件,就能在界面上一步步展示出所記錄的棋子走法,就相當(dāng)于回放整個(gè)對(duì)弈過程。 ( 3) 界面模塊( ChineseChess),整個(gè)所看到的界面。 ( 6) 調(diào)度中心模塊( ChessManage),這是核心模塊,是整個(gè)程序的邏輯控制和處理中心,游戲控制的功能在此實(shí)現(xiàn)。 ( 1) 數(shù)據(jù)模塊和調(diào)度中心模塊之間的關(guān)系:調(diào)度中心模塊負(fù)責(zé)修改數(shù)據(jù)模塊中的數(shù)據(jù)。 圖 36 界面模塊和數(shù)據(jù)模塊關(guān)系圖 ( 5) 界面模塊和調(diào)度中心模塊之間的關(guān)系:界面模塊中的棋盤模塊和功能按鈕模塊把得到的鼠標(biāo)按鍵信息發(fā)送給調(diào)度中心模塊;界面模塊中的聊天模塊把用戶輸入的聊天信息發(fā)送給調(diào)度中心模塊;調(diào)度中心模塊把從外面接收 到的聊天信息發(fā)送給界面模塊中聊天模塊;調(diào)度中心把接收到的提示信息發(fā)送給界面模塊中的提示信息模塊;調(diào)度中心模塊把接收到的一些操作信息發(fā)送給界面模塊中的功能按鈕模塊,讓其彈出相應(yīng)的對(duì)話框。 圖 37 界面模塊和調(diào)度中心模塊關(guān)系圖 圖 38 界面模塊和棋譜模塊關(guān)系圖 ( 9) 調(diào)度中心模塊和信息轉(zhuǎn)發(fā)模塊之間的關(guān)系:調(diào)度中心模塊和信息轉(zhuǎn)發(fā)模塊之間相互發(fā)送聊天信息和下棋信息。 圖 314 服務(wù)器模塊和信息轉(zhuǎn)發(fā)模塊關(guān)系圖 ( 13) 客戶端模塊和信息轉(zhuǎn)發(fā)模塊之間的關(guān)系:客戶端模塊和信息轉(zhuǎn)發(fā)模塊之間相互發(fā)送聊天信息和下棋信息。 有了上面這些模塊的劃分以及它們之間的關(guān)系,需求分析中的功能就可以根據(jù)這些進(jìn)行設(shè)計(jì),后面幾節(jié)就會(huì)講這些功能的設(shè)計(jì)。網(wǎng)絡(luò)連接的通信模式不僅直接方便,還省去了維護(hù)中心服務(wù)器的工作。 當(dāng)用戶選擇 服務(wù)器的時(shí)候,程序會(huì)在所輸入的端口號(hào)建立服務(wù)器,進(jìn)行監(jiān)聽,等待客戶端,也就是等待另外一位用戶的連接。因?yàn)橹皇莾蓚€(gè)人之間的聊天,采用的也是網(wǎng)絡(luò)連接通信模式,故聊天功能按此設(shè)計(jì)。 新建功能的設(shè)計(jì)。之所以要有開始功能,是有兩個(gè)原因的:一個(gè)是因?yàn)橐ㄟ^網(wǎng)絡(luò)對(duì)戰(zhàn),需要用開始來表明自己準(zhǔn)備好;另一個(gè)是因?yàn)橛薪粨Q紅黑的功能。 電子科技大學(xué)學(xué)士學(xué)位論文 20 悔棋也需要對(duì)方同意,因此需要向?qū)Ψ桨l(fā)送悔棋請(qǐng)求,若對(duì)方同意則進(jìn)行悔棋,否則維持狀態(tài)不變。對(duì)于言和功能,需要對(duì)方同意才行。 對(duì)于交換功能,需要對(duì)方同意才行。保存功能指的是要保存棋譜,這個(gè)工作主要由棋譜模塊完成。計(jì)算棋譜需要下面這些信息: ( 1) 棋子顏色; ( 2) 棋子名稱; ( 3) 棋子起點(diǎn)位置; ( 4) 棋子落點(diǎn)位置; ( 5) 棋子起點(diǎn)所在縱線此種棋子數(shù)量及其位 置。由于當(dāng)前計(jì)算機(jī)只能按照既定的指令來做,不能像人的大腦一樣具有自主思考和判斷的能力,電子科技大學(xué)學(xué)士學(xué)位論文 22 所
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1