《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于VB2005的五子棋游戲設計
基于VB2005的五子棋游戲設計
來源:微型機與應用2014年第4期
陳偉康
(汕尾職業技術學院, 廣東 汕尾516600)
摘要: 參考社會上流行的五子棋游戲,使用VB2005進行程序模擬設計,用數組的變換實現查找功能,可增加學生學習編寫程序的興趣,提高《面向對象程序設計》課程教學的效果。
Abstract:
Key words :

摘  要: 參考社會上流行的五子棋游戲,使用VB2005進行程序模擬設計,用數組的變換實現查找功能,可增加學生學習編寫程序的興趣,提高《面向對象程序設計》課程教學的效果。
關鍵詞: 五子棋游戲; VB2005; 循環; 數組

    隨著微軟公司的VS.net系列不斷推出,VS.net在游戲編程方面的強大特性逐漸顯露出來,強大功能使之非常適用于各類游戲的開發,本文介紹的是用VB2005模擬系統自帶的掃雷游戲設計與實現。
1 Visual Studio.NET2005簡介
    Visual Basic.NET以Visual Studio.NET為基礎,是Visual Studio.NET的主要組成部分。它雖然從Visual Basic 6.0發展而來,但并不是對Visual Basic 6.0的簡單改良,而是從基礎開始建立了一個新的平臺。Visual Basic.NET是在現有Visual Basic 6.0基礎之上的一次重大飛躍,它是一個全新的平臺,而不是Visual Basic 6.0的一個升級版本。VB2005 是Visual Studio.NET 2005的其中一部分,主要是以VB2005編寫程序的模式。
2 五子棋游戲的設計與實現
    五子棋是起源于中國古代的傳統黑白棋種之一?,F代五子棋日文稱之為“連珠”,英譯為“Renju”,英文稱之為“Gobang”或“FIR”(Five in a Row的縮寫),亦有“連五子”、“五子連”、“串珠”、“五目”、“五目碰”、“五格”等多種稱謂。
    五子棋不僅能增強思維能力,提高智力,而且富含哲理,有助于修身養性。五子棋既有現代休閑的明顯特征“短、平、快”,又有古典哲學的高深學問“陰陽易理”;它既有簡單易學的特性,為人民群眾所喜聞樂見,又有深奧的技巧和高水平的國際性比賽;它的棋文化源淵流長,具有東方的神秘和西方的直觀;既有“場”的概念,亦有“點”的連接。它是中西文化的交流點,是古今哲理的結晶。
    五子棋游戲是社會上流行的一個簡單游戲,大多數的人都玩過,游戲的規則也是很多人都會,即在一個規定的二維數組中,橫豎撇捺的5個連續一樣就為勝利。使用VB2005設計與實現的該游戲既實現了游戲規則的自動設定,又實現了五子棋游戲的各項功能。
2.1 功能設計
    五子棋游戲主要有以下功能模塊:(1)級別/等級分管理:設置五子棋游戲的棋盤大小,根據游戲者自選等級(程序中暫時設置了3個等級:初級,棋盤的維數是10×10二維,計算機的自動計算水平簡單,玩家能簡單贏取勝利,以吸引玩家的注意與好奇;中級,棋盤的維數是20×20二維,計算機的自動計算水平有所提高,玩家不能簡單贏取勝利,需要用一定的時間與計算才能取得勝利;高級,棋盤的維數是30×30二維,計算機的自動計算水平為最高,玩家需要用更多的時間與計算才能取得勝利),使得游戲更加公平合理。(2)游戲英雄榜:可以存儲游戲者前10名成績。(3)背景顏色:游戲者可以通過按鈕選擇喜歡的游戲背景顏色。(4)棋子與鼠標的背景選擇與更改:選擇玩家喜歡的棋子背景與鼠標圖案,玩家可以選擇先后下棋,以更好地吸引玩家進行游戲。(5)背景音樂:在五子棋游戲進行過程中還提供背景音樂,背景音樂可由游戲者設置。(6)幫助文檔:為游戲者提供文檔幫助信息,包括游戲簡介、界面的使用、鼠標和鍵盤的操作、游戲規則、疑難問答、版本信息等。
2.2 界面設計
    游戲界面采用VB.NET2005實現。以初級為例,棋盤為100個的一維數組,即有100個圖片,在圖1中變換為10×10二維數組。

2.3 主要算法設計
    (1)分別隨機生成100個一維數組picturebox控件,把一維數組轉變成10×10二維數組擺放。在picturebox控件中默認顯示為白色背景,如果用鼠標點擊每個圖片就會變成黑色的圓圈。主要的玩法是,查找周圍橫豎撇捺的連續相鄰的5個位置的圖片是否相同,如果相同則勝出,游戲結束。所以游戲的主要算法是實現了一個位置的周圍橫豎撇捺的連續相鄰的5個位置的查找。如圖2所示。

 

 

    在一個二維的數組中,把橫豎撇捺分為4種情況,橫的時候是把所有的數組位置查找出來。例如以10×10的數組為例,把橫的情況放入一個二維數組中進行判斷,利用多重循環查找連續5個有相同的標記的就為勝出,就是在二維數組中的每一行進行判斷,假設黑棋為1,白旗為0,只要判斷1與0的個數即可,主要關鍵代碼如下:
      For i = 1 To 10                                     ′橫豎的判斷
            For j = 1 To 6
                For t = j To j + 4
                    p = p + pd(i, t)           ′橫進行判斷的數組
                    p1 = p1 + pd(t, i)        ′豎進行判斷的數組
                    If p = 5 Or p1 = 5 Then
                                 ′判斷是否5個連續相同
                          MsgBox("結束")
                           p = 0
                            p1 = 0
                    End If
                Next
              p = 0
             p1 = 0
      Next
    Next
    (2) 通過相同的方法判斷出豎、撇和捺的情況,就可以判斷勝負,主要的算法是用數組與數字替換方法,實現了對兩個玩家的情況判斷。在人機對決時,計算機玩家可以使用一個隨機的生成落子的位置,在生成的位置時要分為難度不一等情況,還要在生成位置中判斷是否存在有棋子,不能重復放入棋子,再使用一個計時器控件編寫自動判斷勝負情況。本程序在VB2005.NET中調試運行正常,很好地實現了五子棋的功能。
    (3) 五子棋的難度等級是使用一個函數來完成的,如果出現而立三三、三四、四四等情況,就可認為勝出。本程序只是實現了3種情況,還有些情況沒有完成。例如沒有把程序改成網絡版,現在只是單機版;在難度等級設計中的函數還不是很完善,在今后的編寫中將繼續完善本程序。
3 主要VB2005技術及編程
    在五子棋游戲中應用到了很多的VB2005技術,使用一維數組變換生成二維數組的棋盤;利用樹結構實現幫助文檔;通過輸入輸出流讀取葉節點文檔;采用選項板實現版本信息;利用多媒體控件實現背景音樂等。使用到了圖片的對應綁定顯示、圖標的變換、數組變換、游戲的提示、多媒體播放控件等。整個游戲綜合性比較強,涉及到控件運用、算法應用、代碼整理等內容,能夠很好地運用VB2005設計程序,提高編程能力,增加學習者的興趣。
    讓學生參考案例程序進行修改與擴展,起到了舉一反三的效果,反復調試無錯誤的情況下,使用VB2005程序自帶的打包安裝工具進行打包,再讓學生熟悉一個軟件的正常安裝與卸載測試;還有寫出規范的Word文檔程序設計說明書,提交為大作業;最后可以在課堂中集中演示作品并講解,加強學生的記憶,更好地提高教學效果與教學質量。
    本設計的程序還存在很多的不足,例如在計算速度上沒能更好地提高效率,程序擴展案例不夠豐富。但是在今后的教學中將不斷完善本程序,使五子棋游戲程序成為一個更好的教學輔助工具,希望通過這個實例能夠提高學生學習編寫程序的興趣,讓更多的人學習與運用VB2005編程。
參考文獻
[1] 靳廣斌.Visual Basic 2005程序設計案例教程[M].北京:北京大學出版社,2008.
[2] Microsoft.VB.NET程序設計語言[M]. 北京:高等教育出版社,2004.
[3] 孔長征.VB.NET編程實例教程[M].北京:北京希望電子出版社,2002.
[4] 柯勝,孫進,鄧志良. 基于Qt4的掃雷游戲的設計與實現[J].微型機與應用,2012,31(16):6-8.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
在线观看精品视频| 香蕉久久精品日日躁夜夜躁| 国产精品久久久久秋霞鲁丝| 欧美激情麻豆| 免费av成人在线| 久久天堂精品| 久久夜色精品| 久久人人九九| 久久综合999| 狂野欧美激情性xxxx| 久久久精品日韩欧美| 欧美资源在线| 久久成人国产| 久久久国产视频91| 久久久久久有精品国产| 久久久久国产精品一区| 久久九九电影| 久久久亚洲高清| 美女精品视频一区| 欧美成年人在线观看| 欧美电影在线观看完整版| 欧美国产日本| 欧美日本在线播放| 欧美视频成人| 国产精品入口夜色视频大尺度| 国产精品九色蝌蚪自拍| 国产精品视频1区| 国产日本欧美视频| 狠狠综合久久| 亚洲国产日韩美| 亚洲美女电影在线| 国产乱肥老妇国产一区二| 久久久国际精品| 免费黄网站欧美| 欧美激情国产高清| 欧美色欧美亚洲另类二区| 国产精品久久久久9999吃药| 国产乱码精品一区二区三区忘忧草| 国产人成一区二区三区影院| 一区一区视频| 99日韩精品| 亚洲欧美国产高清| 久久se精品一区二区| 亚洲精品日韩在线| 亚洲一区二区三区久久| 久久爱www久久做| 老司机午夜免费精品视频| 欧美激情偷拍| 国产精品a级| 好吊妞这里只有精品| 亚洲高清成人| 亚洲影音先锋| 亚洲欧洲在线一区| 亚洲一品av免费观看| 久久久久久**毛片大全| 欧美承认网站| 国产精品毛片一区二区三区| 国产一区二区日韩精品欧美精品| 亚洲成人自拍视频| 亚洲天堂视频在线观看| 久久精品视频网| 亚洲午夜91| 久久频这里精品99香蕉| 欧美视频中文一区二区三区在线观看| 国产偷国产偷亚洲高清97cao| 亚洲激情视频在线播放| 亚洲欧美久久久| 99视频一区| 久久精品人人| 欧美午夜电影完整版| 狠狠色丁香婷婷综合| 99ri日韩精品视频| 欧美在线啊v| 国产精品99久久久久久久女警| 久久精品亚洲乱码伦伦中文 | 一区二区日韩伦理片| 欧美在线观看网站| 欧美日韩国产bt| 国产一区二区三区丝袜| 99www免费人成精品| 亚洲国产精品va在线观看黑人| 亚洲一区二区高清| 欧美v日韩v国产v| 国产亚洲激情在线| 在线一区二区三区四区| 亚洲免费不卡| 老司机精品视频网站| 国产日韩精品综合网站| 亚洲最新色图| 亚洲精品美女91| 久久久精品午夜少妇| 国产精品二区三区四区| 亚洲区一区二区三区| 久久精品亚洲一区二区| 欧美一级大片在线免费观看| 欧美日韩一区二区欧美激情| 亚洲国产高清一区二区三区| 欧美在线一区二区| 欧美一区二区三区视频| 欧美午夜视频在线观看| 亚洲精品孕妇| 亚洲片在线资源| 久久午夜影视| 国产欧美日韩精品丝袜高跟鞋| 一区二区三区视频在线观看| 日韩视频在线一区| 欧美成人免费在线| 在线观看视频欧美| 亚洲高清视频的网址| 久久精品一区二区三区不卡| 国产九区一区在线| 亚洲综合社区| 欧美亚洲在线视频| 国产精品久久久久久一区二区三区 | 先锋影音久久久| 国产精品福利影院| 中日韩午夜理伦电影免费| 夜夜嗨av一区二区三区四季av| 欧美成人亚洲| 亚洲国产精品电影在线观看| 亚洲欧洲日本一区二区三区| 欧美成人精品福利| 影院欧美亚洲| 亚洲欧洲日本专区| 欧美精品一区二区蜜臀亚洲| 亚洲黑丝在线| 一区二区激情| 欧美视频在线视频| 亚洲伊人伊色伊影伊综合网| 欧美一级专区| 国产日本欧洲亚洲| 久久国产精品久久w女人spa| 久久综合福利| 亚洲大黄网站| 一区二区av| 国产精品久久久久久久午夜片| 亚洲一区二区三区色| 欧美在线视频免费| 狠狠入ady亚洲精品经典电影| 亚洲国产岛国毛片在线| 欧美岛国在线观看| 99热精品在线| 欧美在线综合视频| 韩国一区二区三区美女美女秀| 亚洲国产精品电影| 欧美日本韩国| 中文在线一区| 欧美中文在线观看国产| 一区在线免费| 一本久久综合| 国产九色精品成人porny| 亚洲第一二三四五区| 欧美大片免费| 亚洲视频在线观看三级| 久久精品视频在线看| 亚洲国产高清自拍| 亚洲一区二区三区影院| 国产日产欧美一区| 亚洲精品久久| 国产精品视频午夜| 亚洲第一精品影视| 欧美日韩卡一卡二| 亚洲欧美日韩在线播放| 鲁大师成人一区二区三区| 亚洲三级免费电影| 欧美亚洲视频在线观看| 一区二区亚洲精品| 一本久道久久综合狠狠爱| 国产情人节一区| 亚洲精品在线观看免费| 国产精品视频不卡| 亚洲国产国产亚洲一二三| 国产精品成人午夜| 亚洲第一视频网站| 欧美性猛交xxxx免费看久久久| 欧美与欧洲交xxxx免费观看 | 久久国产免费| 欧美日韩国产91| 久久国产黑丝| 欧美日韩直播| 亚洲大片av| 国产精品视频一区二区三区| 亚洲国产精品日韩| 国产精品久久久久久久久久ktv| 亚洲福利在线视频| 国产精品免费网站| 亚洲欧洲精品一区二区三区| 国产精品欧美日韩久久| 亚洲美女诱惑| 国产亚洲午夜| 亚洲一区成人| 亚洲高清视频在线观看| 欧美自拍丝袜亚洲| 在线视频你懂得一区二区三区| 欧美成年人视频网站| 久久er99精品| 国产精品日本欧美一区二区三区| 亚洲精品一区二区三区在线观看 | 国产一区激情| 亚洲一区在线播放|