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

正文內(nèi)容

vb課程設(shè)計報告書-文庫吧

2025-05-14 22:49 本頁面


【正文】 現(xiàn)在堆流程圖分析。首先明確目的,人機互奕的目的都是為了獲得勝利,所以在前兩步時,當(dāng)電腦下棋時它會首先搶占5那個中間位置位置(棋盤標(biāo)注如圖7所示),因為5位置獲得勝利的概率最大。這就是所謂的搶占有利位置。這就要一段判斷程序:If a(5).Tag = 0 Then sel = 5 Else sel = 1 End if 而當(dāng)5位置被占后,為了設(shè)計簡單,使計算機占領(lǐng)位置1,接下來的落子,計算機則是隨著“人”的落子而判斷,我的設(shè)計是,計算機通過不斷計算和判斷不讓“人”先贏,即是說計算機是不讓“人”獲得勝利為主要目的,中間的過程如果玩家疏忽,計算機會獲得勝利,但是我并沒有編寫程序使計算機想方設(shè)法獲得勝利。當(dāng)人機走的步數(shù)超過2步時,計算機會首先判斷“人“在占了5位置后,下一步有沒有勝利的可能,此時人的情況有(1,5)、(2,5)、(3,5)、(4,5)、(6,5)、(7,5)、(8,5)、(9,5)、八種情況,所以此時電腦的主要任務(wù)就是堵子。當(dāng)“人”位置為(i,5)時,計算機會將(10i)位置占領(lǐng)。當(dāng)“人”沒有占領(lǐng)5位置后,電腦需要進(jìn)行8種計算判斷。這八種情況我用了“多分支條件選擇語句”,對八種情況情況一一判斷。Case 1 “人”有沒有占了(2,3)、(4,7)兩個位置,若是的話,計算機會在1位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;Case 2 “人”有沒有占了(1,3)位置,若是的話,計算機會在2位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;Case 3 “人”有沒有占了(1,2)、(6,9)兩個位置,若是的話,計算機會在3位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;Case 4 “人”有沒有占了(1,7)、(4,6)兩個位置,若是的話,計算機會在4位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;Case 6 “人”有沒有占了(3,9)位置,若是的話,計算機會在6位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;Case 7 “人”有沒有占了(1,4)、(8,9)兩個位置,若是的話,計算機會在7位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;Case 8 “人”有沒有占了(7,9)、位置,若是的話,計算機會在8位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;Case 9 “人”有沒有占了(3,6)、(7,8)兩個位置,若是的話,計算機會在9位置落子,若不是,計算機會按照原來的程序從1到9在沒有落子位置落子;上面程序已經(jīng)可以完成互奕的要求了。在游戲進(jìn)行過程中,計算機不僅僅需要下棋,還要判斷出輸贏,因為有可能棋盤未下滿,就已經(jīng)有一方獲得勝利了,這時游戲就應(yīng)該結(jié)束停止,而不是繼續(xù)下去。所以進(jìn)行過程中,要有一個判斷程序,不停地判斷是否已經(jīng)有一方獲得勝利了。這段程序編寫的也比較簡單,因為棋盤的1,5,9位置就可以將所有勝利的情況包括在內(nèi)。包含1置的勝利情況有(1,2,3)、(1,4,7)、(1,5,9)三種情況;包含5位置的勝利情況有(1,5,9)、(2,5,8)、(3,5,6)、(4,5,6)四種情況。;包含9位置的勝利情況有(3,6,9)、(1,5,9)、(7,8,9)三種情況。因為(1,5,9)重復(fù)計算三次,總共只有3+4+32=8種情況將八種情況出現(xiàn)時,對應(yīng)的Command的Tag值為1還是0即可知道是“人”還是計算機贏得了比賽。人贏的比賽時,label1會出現(xiàn)對應(yīng)的說明,情形如圖8所示: 圖8.“人”獲得勝利時窗口情形人輸?shù)舯荣悤r,情形如圖9所示 和棋時,情形如圖10所示: 圖11所示為最終游戲界面,圖12為最終設(shè)計窗口 比較圖圖112,不難發(fā)現(xiàn)最終設(shè)計的模板中比原先的多了4個Label控件和2個Timer控件。我的設(shè)計中最上面的兩個重疊在一起的Label是用來滾動顯示歡迎語、贊美語和鼓勵語的。具體情況如下圖所示 滾動字幕的設(shè)計早在之前的課上就做過,所以設(shè)計這個得心易手,很快就搞定。字幕的滾動用到了計時器Timer控件,而且要讓字幕產(chǎn)生連續(xù)滾動效果,必須要用兩個Label在事件Timer1_Timer ()中才能實現(xiàn)。主要程序如下圖所示: 這樣,通過兩個Label的相互交錯運動,差生連續(xù)的效果我還用了兩個label和一個計時器Timer設(shè)計了一個簡單的計時窗口,本來是準(zhǔn)備給人限制時間的,可惜能力不夠,程序?qū)懖缓?,只能退而求其次,設(shè)計了這么一個簡單的計時窗口,它會每秒運行一次。其具體情況如圖所示: 游戲運行時 窗口中顯示除此之外我還設(shè)計了兩個對話框用來提示玩家。一是在游戲已經(jīng)有一方獲得勝利,但玩家試圖繼續(xù)在棋盤下棋時會跳出如下警告對話框: 第二個則是游戲剛開始,玩家沒選擇誰先開始下棋,就嘗試在棋盤上下棋,此次會彈出如下提示對話框: 第三個是游戲重置時,跳出的的提示對話框: 這三個對話框添加方法十分簡單,主要程序語句分別為: msg = MsgBox(游戲已結(jié)束,請重新開始!, 0 + 48, 警告) msg = MsgBox(請選擇誰先開始!, 0 + 48, 提示) msg = MsgBox(您確定要重新開始嗎?, vbYesNo, 提示) 就是幾行簡短的程序語句,整個游戲也變得略微豐富了些,而不是那么死板。所以,合理的使用一些小程序也是蠻有用的。三、設(shè)計過程中遇到的主要問題與解決方案:
點擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1