【正文】
能干的人,不在情緒上計(jì)較,只在做事上認(rèn)真;無(wú)能的人!不在做事上認(rèn)真,只在情緒上計(jì)較。此段程序是使得某一方贏了之后,棋盤未滿但棋盤上不得再次落子 For i = 0 To 8 Command1(i).Tag = 2 Next i End If If = 您 + 贏了! Then For i = 0 To 8 Command1(i).Tag = 2 Next i End IfEnd SubPrivate Sub Label1_Change() If = 您 + 輸了! Then = 0 = 0 End If If = 您 + 贏了! Then = 0 = 0 End If If = 和棋 Then = 0 = 0 End IfEnd SubPrivate Sub Option1_Click(Index As Integer) Call Form_Activate = True x = 1End SubPrivate Sub Timer1_Timer() = vbRed = vbRed = 歡迎您使用本軟件! = 歡迎您使用本軟件!If = 您 + 輸了! Then = 請(qǐng)不要?dú)怵H,相信您下次一定可以贏! = 請(qǐng)不要?dú)怵H,相信您下次一定可以贏!End IfIf = 您 + 贏了! Then = 您好棒!再接再厲哦! = 您好棒!再接再厲哦!End IfIf = 和棋 Then = 加把勁,爭(zhēng)取超過(guò)電腦哦! = 加把勁,爭(zhēng)取超過(guò)電腦哦!End If = 50 + = 50 + If + Then = End IfIf Then = 0End IfEnd SubPrivate Sub Timer2_Timer() x = x + 1 = xEnd Sub寧可累死在路上,也不能閑死在家里!寧可去碰壁,也不能面壁。中間的以優(yōu)先考慮,不需要再次判斷 i = i + 1 End If If a(i).Tag = 0 Then 39。電腦不能在這個(gè)格子上落子 sum = sum + 1 39。設(shè)置一個(gè)表達(dá)式用來(lái)存儲(chǔ)程序中需要的額外數(shù)據(jù),0代表人 Next i = If Option1(0).Value = True Then Call diannao End IfEnd SubPrivate Sub Form_Load() For i = 1 To 9 Set a(i) = Command1(i 1) 39。所以,最后也只能這樣了。雖然玩過(guò)不少游戲,但是,玩自己設(shè)計(jì)的小游戲還真的是頭一遭。我看來(lái),我已經(jīng)將自己的思路想法和設(shè)計(jì)過(guò)程很圓滿的表達(dá)出來(lái)了。這些都不是很難。報(bào)告中最棘手的肯定要算流程圖的繪制了,說(shuō)實(shí)話,word繪圖的方法我已經(jīng)王的差不多了,為了畫好流程圖不得不又一次翻書,重頭再來(lái)。本來(lái)以為程序設(shè)計(jì)結(jié)束,便萬(wàn)事大吉了,可惜當(dāng)我在完成設(shè)計(jì)說(shuō)明書時(shí),也搞得焦頭爛額。但是不代表成果是完美的。我做事喜歡迅速的完成而不是拖拉,所以連續(xù)兩個(gè)晚上弄的比較晚。編寫程序是個(gè)有條理的邏輯過(guò)程,首先必須有個(gè)大致的思路,整體的規(guī)劃出來(lái),首先將主體程序編寫出來(lái),后再是分步地去具體完成。借了些書看看,也在網(wǎng)上不斷地查詢資料。對(duì)于這個(gè)情況,我尚未想到解決方法,嘗試了幾次均以失敗告終,這也是這個(gè)程序的另外一個(gè)不足之處吧。本來(lái),我也準(zhǔn)備給這個(gè)游戲設(shè)計(jì)三個(gè)難度“Easy”、“Normal”、“Hard”,可惜做的過(guò)程中發(fā)現(xiàn),要實(shí)現(xiàn)這個(gè)目標(biāo),程序就要做大的改動(dòng),而且一改動(dòng)我也沒(méi)辦法還原,還使得原本正常的程序出現(xiàn)錯(cuò)誤而運(yùn)行不了,所以后來(lái)就放棄了。這個(gè)輸贏判斷程序的流程圖如下:開始sum=1shuying (x,y,z)sum=sum+1(x,y,z)Noa(x).Tag=a(y).Tag=a(z).Tag玩家贏YesSum=9?No電腦贏YesYes和棋a(x).Tag=1Noa(x).Tag=1?YesNoNo結(jié)束:當(dāng)一方獲得勝利而棋盤未滿時(shí),未滿的棋盤不可以繼續(xù)落子對(duì)于這個(gè)問(wèn)題,我也曾一度迷惘不知如何解決,也詢問(wèn)過(guò)老師,也未能很好的得到解決。前文中已經(jīng)提到用Command的Tag值來(lái)表示棋子,所以我們對(duì)于任意一個(gè)shuying(x,y,z)判斷是否a(x).Tag = a(y).Tag = a(z).Tag。這個(gè)真心是困擾我很久,而且沒(méi)用很好的辦法解決。其具體情況如圖所示: 游戲運(yùn)行時(shí) 窗口中顯示除此之外我還設(shè)計(jì)了兩個(gè)對(duì)話框用來(lái)提示玩家。我的設(shè)計(jì)中最上面的兩個(gè)重疊在一起的Label是用來(lái)滾動(dòng)顯示歡迎語(yǔ)、贊美語(yǔ)和鼓勵(lì)語(yǔ)的。包含1置的勝利情況有(1,2,3)、(1,4,7)、(1,5,9)三種情況;包含5位置的勝利情況有(1,5,9)、(2,5,8)、(3,5,6)、(4,5,6)四種情況。Case 1 “人”有沒(méi)有占了(2,3)、(4,7)兩個(gè)位置,若是的話,計(jì)算機(jī)會(huì)在1位置落子,若不是,計(jì)算機(jī)會(huì)按照原來(lái)的程序從1到9在沒(méi)有落子位置落子;Case 2 “人”有沒(méi)有占了(1,3)位置,若是的話,計(jì)算機(jī)會(huì)在2位置落子,若不是,計(jì)算機(jī)會(huì)按照原來(lái)的程序從1到9在沒(méi)有落子位置落子;Case 3 “人”有沒(méi)有占了(1,2)、(6,9)兩個(gè)位置,若是的話,計(jì)算機(jī)會(huì)在3位置落子,若不是,計(jì)算機(jī)會(huì)按照原來(lái)的程序從1到9在沒(méi)有落子位置落子;Case 4 “人”有沒(méi)有占了(1,7)、(4,6)兩個(gè)位置,若是的話,計(jì)算機(jī)會(huì)在4位置落子,若不是,計(jì)算機(jī)會(huì)按照原來(lái)的程序從1到9在沒(méi)有落子位置落子;Case 6 “人”有沒(méi)有占了(3,9)位置,若是的話,計(jì)算機(jī)會(huì)在6位置落子,若不是,計(jì)算機(jī)會(huì)按照原來(lái)的程序從1到9在沒(méi)有落子位置落子;Case 7 “人”有沒(méi)有占了(1,4)、(8,9)兩個(gè)位置,若是的話,計(jì)算機(jī)會(huì)在7位置落子,若不是,計(jì)算機(jī)會(huì)按照原來(lái)的程序從1到9在沒(méi)有落子位置落子;Case 8 “人”有沒(méi)有占了(7,9)、位置,若是的話,計(jì)算機(jī)會(huì)在8位置落子,若不是,計(jì)算機(jī)會(huì)按照原來(lái)的程序從1到9在沒(méi)有落子位置落子;Case 9 “人”有沒(méi)有占了(3,6)、(7,8)兩個(gè)位置,若是的話,計(jì)