基于Android系統(tǒng)的五子棋游戲開發(fā)與實(shí)現(xiàn)_第1頁
基于Android系統(tǒng)的五子棋游戲開發(fā)與實(shí)現(xiàn)_第2頁
基于Android系統(tǒng)的五子棋游戲開發(fā)與實(shí)現(xiàn)_第3頁
基于Android系統(tǒng)的五子棋游戲開發(fā)與實(shí)現(xiàn)_第4頁
基于Android系統(tǒng)的五子棋游戲開發(fā)與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、題 目基于Android系統(tǒng)的五子棋游戲開發(fā)與實(shí)現(xiàn)學(xué)生姓名學(xué) 號(hào)所在系(院)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)名稱年 級(jí)指導(dǎo)教師于桂玲職 稱講師2013年6月10日北京郵電大學(xué)畢業(yè)設(shè)計(jì)(論文)誠(chéng)信聲明本人聲明所呈交的畢業(yè)設(shè)計(jì)(論文),題目基于Android平臺(tái)的五子棋游戲開發(fā)與實(shí)現(xiàn)是本人在指導(dǎo)教師的指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果,除了文中特別加以標(biāo)注和致謝中所羅列的內(nèi)容以外,畢業(yè)設(shè)計(jì)(論文)中不包含其他人已經(jīng)發(fā)表或撰寫過的研究成果,也不包含為獲得北京郵電大學(xué)或其他教育機(jī)構(gòu)的學(xué)位或證書而使用過的材料。申請(qǐng)學(xué)位論文與資料若有不實(shí)之處,本人承擔(dān)一切相關(guān)責(zé)任。本人簽名: 日期: 畢業(yè)設(shè)計(jì)(論文)使用權(quán)的說明本

2、人完全了解北京郵電大學(xué)有關(guān)保管、使用論文的規(guī)定,其中包括:學(xué)校有權(quán)保管、并向有關(guān)部門送交學(xué)位論文的原件與復(fù)印件;學(xué)??梢圆捎糜坝?、縮印或其它復(fù)制手段復(fù)制并保存論文;學(xué)??稍试S論文被查閱或借閱;學(xué)??梢詫W(xué)術(shù)交流為目的,復(fù)制贈(zèng)送和交換學(xué)位論文;學(xué)??梢怨紝W(xué)位論文的全部或部分內(nèi)容。本人簽名: 日期: 指導(dǎo)教師簽名: 日期: 北京郵電大學(xué)畢業(yè)設(shè)計(jì)(論文)PAGE 40題目基于Android平臺(tái)的五子棋游戲開發(fā)與實(shí)現(xiàn)摘要隨著互聯(lián)網(wǎng)的逐步深入,我們的生活也隨之有了很大的改變。Android的代碼是被公開的,它以Linux為基礎(chǔ),在很短的時(shí)間里佇立到了智能機(jī)的頂端,所以用Android來對(duì)軟件進(jìn)行開發(fā)很有

3、必要。本文詳細(xì)介紹了怎樣用Java語言在Android平臺(tái)上編寫游戲。開發(fā)五子棋游戲更重視對(duì)系統(tǒng)的分析和設(shè)計(jì)階段而不僅僅是一個(gè)簡(jiǎn)單的游戲。本文是嚴(yán)格符合軟件工程學(xué)中對(duì)軟件設(shè)計(jì)的要求的,先是總體的設(shè)計(jì)一個(gè)大概的軟件周期的計(jì)劃,然后按照計(jì)劃分開階段對(duì)它進(jìn)行嚴(yán)格的管理,并對(duì)軟件的大框架設(shè)計(jì)和細(xì)節(jié)設(shè)計(jì)進(jìn)行了主要的介紹,程序運(yùn)行開始后,又繼續(xù)的完善設(shè)計(jì),并運(yùn)用surface重繪等存儲(chǔ)數(shù)據(jù)以致最終得到一個(gè)集優(yōu)美的界面、便捷的操作和良好的視覺感應(yīng)于一身的可操作性系統(tǒng),即“基于Android平臺(tái)五子棋游戲的設(shè)計(jì)與開發(fā)”。關(guān)鍵詞:Android Java 軟件工程 五子棋游戲TitleThe five in a

4、 row game based on AndroidAbstractWith the acceleration development of the Internet, our life has had the very big change. Androids code is open, it is based on Linux, in a very short time stood at the top of the Smartphone, so use Android to software development is necessary. This paper introduces

5、in detail how to use Java language to write the game on the Android platform. Gobang game development more emphasis on system analysis and design stage of the not just a simple game. This article is strictly conform to the requirements of software engineering for software design, first the overall d

6、esign of a general software cycle of plan, and then according to the plan phase separately to strict management, and the framework of software design and detailed design, the main program is running after the start, and continue to perfect the design, and redrawn using surface and other store data s

7、o that eventually get a collection of beautiful interface, convenient operation and good visual induction of operational system, namely Gobang game, based on Android platform of design and development.Keywords:Android Java Software Engineering Five in a Row目 錄 TOC o 1-3 h z u HYPERLINK l _Toc3594983

8、43 1 前言 PAGEREF _Toc359498343 h 1 HYPERLINK l _Toc359498344 1.1 課題研究背景 PAGEREF _Toc359498344 h 1 HYPERLINK l _Toc359498345 1.2 課題研究的意義和目的 PAGEREF _Toc359498345 h 4 HYPERLINK l _Toc359498346 1.3 可行性研究 PAGEREF _Toc359498346 h 5 HYPERLINK l _Toc359498347 1.3.1 技術(shù)可行性 PAGEREF _Toc359498347 h 5 HYPERLINK

9、l _Toc359498348 1.3.2 經(jīng)濟(jì)可行性 PAGEREF _Toc359498348 h 6 HYPERLINK l _Toc359498349 1.3.3 操作可行性 PAGEREF _Toc359498349 h 6 HYPERLINK l _Toc359498350 1.4 本章小結(jié) PAGEREF _Toc359498350 h 7 HYPERLINK l _Toc359498351 2 需求分析與系統(tǒng)設(shè)計(jì) PAGEREF _Toc359498351 h 8 HYPERLINK l _Toc359498352 2.1 需求分析與創(chuàng)新意義 PAGEREF _Toc35949

10、8352 h 8 HYPERLINK l _Toc359498353 2.1.1 系統(tǒng)的需求分析 PAGEREF _Toc359498353 h 8 HYPERLINK l _Toc359498354 2.1.2 系統(tǒng)的創(chuàng)新與意義 PAGEREF _Toc359498354 h 8 HYPERLINK l _Toc359498355 2.2 系統(tǒng)的功能設(shè)計(jì) PAGEREF _Toc359498355 h 9 HYPERLINK l _Toc359498356 2.2.1 人機(jī)對(duì)戰(zhàn) PAGEREF _Toc359498356 h 9 HYPERLINK l _Toc359498357 2.2.2

11、 人人對(duì)戰(zhàn) PAGEREF _Toc359498357 h 9 HYPERLINK l _Toc359498358 2.2.3 關(guān)于 PAGEREF _Toc359498358 h 10 HYPERLINK l _Toc359498359 2.3 系統(tǒng)的組成與實(shí)現(xiàn)原理 PAGEREF _Toc359498359 h 10 HYPERLINK l _Toc359498360 2.3.1 系統(tǒng)組成 PAGEREF _Toc359498360 h 10 HYPERLINK l _Toc359498361 2.3.2 系統(tǒng)實(shí)現(xiàn)原理 PAGEREF _Toc359498361 h 10 HYPERLIN

12、K l _Toc359498362 2.4 本章小結(jié) PAGEREF _Toc359498362 h 11 HYPERLINK l _Toc359498363 3 客戶端系統(tǒng)的實(shí)現(xiàn) PAGEREF _Toc359498363 h 12 HYPERLINK l _Toc359498364 3.1 用戶進(jìn)入游戲 PAGEREF _Toc359498364 h 13 HYPERLINK l _Toc359498365 3.2 人人對(duì)戰(zhàn) PAGEREF _Toc359498365 h 15 HYPERLINK l _Toc359498366 3.3 人機(jī)對(duì)戰(zhàn) PAGEREF _Toc359498366

13、 h 20 HYPERLINK l _Toc359498367 3.4 關(guān)于 PAGEREF _Toc359498367 h 22 HYPERLINK l _Toc359498368 3.5 本章小結(jié) PAGEREF _Toc359498368 h 22 HYPERLINK l _Toc359498369 4 系統(tǒng)的測(cè)試 PAGEREF _Toc359498369 h 23 HYPERLINK l _Toc359498370 4.1 系統(tǒng)的測(cè)試環(huán)境 PAGEREF _Toc359498370 h 23 HYPERLINK l _Toc359498371 4.1.1 系統(tǒng)的開發(fā)環(huán)境 PAGERE

14、F _Toc359498371 h 23 HYPERLINK l _Toc359498372 4.1.2 系統(tǒng)運(yùn)行環(huán)境 PAGEREF _Toc359498372 h 23 HYPERLINK l _Toc359498373 4.2 系統(tǒng)功能測(cè)試 PAGEREF _Toc359498373 h 23 HYPERLINK l _Toc359498374 4.2.1 人人對(duì)戰(zhàn)測(cè)試 PAGEREF _Toc359498374 h 24 HYPERLINK l _Toc359498375 4.2.2 人機(jī)對(duì)戰(zhàn)測(cè)試 PAGEREF _Toc359498375 h 24 HYPERLINK l _Toc3

15、59498376 4.2.3 關(guān)于測(cè)試 PAGEREF _Toc359498376 h 25 HYPERLINK l _Toc359498377 4.3 本章小結(jié) PAGEREF _Toc359498377 h 25 HYPERLINK l _Toc359498378 5 系統(tǒng)存在問題及改進(jìn)方法 PAGEREF _Toc359498378 h 26 HYPERLINK l _Toc359498379 5.1 系統(tǒng)存在的問題 PAGEREF _Toc359498379 h 26 HYPERLINK l _Toc359498380 5.2 系統(tǒng)改進(jìn)方法 PAGEREF _Toc359498380

16、h 26 HYPERLINK l _Toc359498381 6 結(jié) 論 PAGEREF _Toc359498381 h 27 HYPERLINK l _Toc359498382 致 謝 PAGEREF _Toc359498382 h 29 HYPERLINK l _Toc359498383 參考文獻(xiàn) PAGEREF _Toc359498383 h 30 HYPERLINK l _Toc359498384 附 錄 PAGEREF _Toc359498384 h 31前言課題研究背景 智能手機(jī),和電腦是一樣的,它不依賴于任何系統(tǒng)而操作,玩家可以自行下載并且安裝軟件或者游戲等應(yīng)用來不斷的擴(kuò)充手機(jī)的

17、功能,其中包括利用運(yùn)營(yíng)商通訊網(wǎng)絡(luò)來接入無線進(jìn)行網(wǎng)絡(luò)操作。目前,細(xì)數(shù)全球范圍內(nèi)多數(shù)的手機(jī)廠商都在做智能手機(jī),例如具有代表性的蘋果、三星、HTC、小米等。我們分析智能手機(jī)具備以下五大特點(diǎn):1. 可以通過無線技術(shù)接入因特網(wǎng),即要有GSM網(wǎng)絡(luò)支持下的GPRS或者是CDMA網(wǎng)絡(luò)支持下的CDMA 1X或3G網(wǎng)絡(luò)。2. 比較人性化,可以根據(jù)個(gè)人需求自行更改主題界面等。3. 具有開放性,可以根據(jù)不同用戶的需求自行下載安裝特別多的應(yīng)用程序,比如社交軟件或者游戲等,從而可以達(dá)到無限的擴(kuò)充智能手機(jī)功能的效果。4. 具有PDA(掌上電腦)功能,例如有文件的管理、便簽、地圖搜索、網(wǎng)頁瀏覽、多媒體播放、辦公軟件、應(yīng)用程序

18、管理等。5.具有很強(qiáng)大的功能,可以在很多的地方下載并安裝別的軟件。Android的誕生:準(zhǔn)確的來說是在二零零三年,創(chuàng)始人Andy Rubin在Android的傳奇開始之前就說過:“我們有很大的潛力來開發(fā)能夠捕捉用戶地理位置信息以及狀態(tài)的不固定的設(shè)備。如果這些設(shè)計(jì)者很有想法的話,那么在很短的時(shí)間內(nèi)這些東西就會(huì)被應(yīng)用到那些產(chǎn)品中?!爆F(xiàn)在看,估計(jì)創(chuàng)始人自己都不會(huì)想到他的預(yù)言是這么的準(zhǔn)確。事實(shí)上,我們可以預(yù)見未來在移動(dòng)領(lǐng)域?qū)?huì)有巨大的改變,從而催生出類似于概念機(jī)那樣新穎、獨(dú)特、超前的智能機(jī)。二零零五年的時(shí)候,有很多謠傳說Google通過專注于制造可以捕捉位置服務(wù)的手機(jī)從而進(jìn)軍手機(jī)制領(lǐng)域,但是擺在它面前

19、最大難題就是它并沒有實(shí)現(xiàn)這個(gè)愿望的可搭載的平臺(tái)。Google在二零零五年的七月收購(gòu)了 Android,雖然是一次小規(guī)模的收購(gòu)行動(dòng),但大家懷疑這標(biāo)志著Google進(jìn)入了移動(dòng)市場(chǎng),所以還是立刻就引起了業(yè)界的大力關(guān)注。盡管是這樣,在那個(gè)時(shí)候,這個(gè)發(fā)展沒有很壯大的做軟件的公司正是由 Andy Rubin、Rich Miner、Nick Sears 以及 Chris White 四個(gè)人共同創(chuàng)建的?,F(xiàn)在看來,他們的疑慮是對(duì)的。差不多就在 二零零七年十一月五日的時(shí)候,Google對(duì)公眾開放了Android,這個(gè)不僅僅是一個(gè)基于Linux的全新的移動(dòng)操作系統(tǒng),最重要的是它完全是不保密設(shè)計(jì)代碼的,不用說,這在業(yè)

20、內(nèi)肯定會(huì)使人們震驚,做出很大的改變。這是當(dāng)時(shí)新成立的開放手機(jī)聯(lián)盟整合下的成果,諸如 Google、HTC、Intel、Sprint-Nextel、T-Mobile 以及 NVIDIA 都是一個(gè)組織的成員,這個(gè)組織是為了給所有的設(shè)備建造一個(gè)共同的可使用的標(biāo)準(zhǔn)。第一款搭載 Android 系統(tǒng)的手機(jī)是 2008 年 9 月由 T-Mobile 發(fā)布的 G1,它擁有 GPS 功能,3.1M 攝像頭,以及一系列的 Google 應(yīng)用。G1 的面市,正式拉開了一場(chǎng)巨大變革的序幕,不僅僅是Google,更是對(duì)于整個(gè)移動(dòng)業(yè)界。2009 年 5 月發(fā)布了第一個(gè)主要版本Android 1.5 “Cupcake”

21、。在對(duì)它進(jìn)行升級(jí)之后,用戶界面有了很大的改善,新的版本無疑給用戶帶來了全新的體驗(yàn),并且它還增加了一些功能。Android 1.6 “Donut” 2009 年 9 月發(fā)布。搭載Android 1.6 的 HTC Hero 獲得了意想不到的成功。不僅得到了一些從未有過的關(guān)注,讓許多客戶真正對(duì)Android產(chǎn)生興趣,而且更觸動(dòng)了蘋果和微軟兩家競(jìng)爭(zhēng)者的敏感神經(jīng)。Android 2.0/2.1:,又有一個(gè)很重要的版本在2009 年 10 月 26 日完成,這次完成的速度可以說是相當(dāng)快的,無與倫比。這次,大版本升級(jí)到了 Android 2.0/2.1 “Eclair”。繼2009 年 12 月發(fā)布的An

22、droid 2.0.1 SDK后,是在2010 年 1 月發(fā)布的2.1 版本。會(huì)有很多的看客甚至是用戶都會(huì)奇怪,為什么Android的系統(tǒng)版本代號(hào)會(huì)被稱作甜點(diǎn),其實(shí)是在 Android 1.5 發(fā)布出來的時(shí)候開始使用的這個(gè)命名的方法。按照字母的順序,依次是小蛋糕,甜甜圈和松餅,所以每更新一個(gè)版本就可以被想象成是對(duì)它的大小的擴(kuò)充。Android 2.2 “FroYo”:Nexus One 的用戶已經(jīng)開始接受 Android 2.2 “FroYo”的無線更新,并會(huì)在很快速的時(shí)間內(nèi)使所有使用其他手機(jī)的玩家能夠使用這個(gè)新的版本。這個(gè)系統(tǒng)版本新的升級(jí),讓很多的使用其他手機(jī)的人們很是羨慕,因?yàn)樗泻芎玫慕?/p>

23、面,還增加了許多新的功能,玩家使用會(huì)有新的感受。有關(guān)的消息眾口一詞聲稱 Android 3.0 “Gingerbread”,它會(huì)讓用戶有更新穎的更獨(dú)特的體驗(yàn),并且Google 估計(jì)會(huì)在今年秋天的時(shí)候?qū)⑺l(fā)布出來??v觀Android的發(fā)展史,在2003年的時(shí)候,出現(xiàn)了特別有遠(yuǎn)見的Andy,他的預(yù)言得到了證實(shí),2005年經(jīng)歷了正式起步以及被Google收購(gòu)。一路以來,系統(tǒng)一直在進(jìn)步,并且新的機(jī)型也一直在快速的發(fā)布。通過這一切,我們有理由相信,Android很有可能會(huì)成為手機(jī)系統(tǒng)同行業(yè)內(nèi)的最優(yōu)秀的,這樣的勢(shì)頭,不容易被改變。Android 平板電腦也在今年的夏天開始發(fā)布以及 Google TV 發(fā)布

24、以后(也許還有 Google Music),Android 有很大的可能讓我們領(lǐng)會(huì)未來手機(jī)的發(fā)展趨勢(shì),讓我們具有不一樣的體驗(yàn)10。Android平臺(tái)對(duì)比其他的平臺(tái)有很多的有點(diǎn)。首先分析Symbian,主要是在諾基亞手機(jī)上運(yùn)行,雖然說已經(jīng)發(fā)展的很成熟,但是它在理念上與我們平時(shí)經(jīng)常用的系統(tǒng)還是有很大的差別,整個(gè)感覺上還是偏向于以前舊一點(diǎn)的設(shè)計(jì)。重要的是它對(duì)互聯(lián)網(wǎng)并沒有連接的特別好,不能夠讓用戶體驗(yàn)到特別滿意的聯(lián)網(wǎng)速度,在這樣一個(gè)信息化時(shí)代就顯得沒有競(jìng)爭(zhēng)力。但是Android不同,它最主要最關(guān)注的就是對(duì)于聯(lián)網(wǎng)這一塊兒,不管是軟件還是硬件的設(shè)計(jì),都是在主要突出互聯(lián)網(wǎng)的重要,正好是彌補(bǔ)了Symbian最

25、大的不足。這樣,就會(huì)讓用戶更好更舒適的感受信息化時(shí)代,所以更容易贏得用戶的喜愛,得到廣大用戶的接受與認(rèn)可。還有就是現(xiàn)在比較流行的ios,雖然它有很完整的應(yīng)用,可以給用戶帶來很多很豐富的體驗(yàn),但是它只是相對(duì)于蘋果用戶而言,并不可以針對(duì)多數(shù)的手機(jī)用戶。但是Android同樣不同于ios,它是完全開放的,這樣更多的開發(fā)者可以為其設(shè)計(jì)多種多樣不同的應(yīng)用,繼而迎來越來越多的開發(fā)創(chuàng)意,進(jìn)而豐富其應(yīng)用領(lǐng)域。而且,它具有一定的標(biāo)準(zhǔn),各種不同的平臺(tái)都可以兼容使用,所以完全可以植于好多的手機(jī)品牌上,這樣更有利于它的推廣,讓更多的用戶熟知。總的來說,現(xiàn)在流行的系統(tǒng)中,從不同的方面都可以看出Android系統(tǒng)相比其他

26、系統(tǒng)的優(yōu)勢(shì),可以說它擁有很多手機(jī)用戶的支持者2。 所以完全可以這樣說,隨著人們對(duì)移動(dòng)設(shè)備的要求變得越來越高,那就必須有能夠逐漸滿足這樣一個(gè)高要求的開發(fā)平臺(tái),那么Android就是在這樣的環(huán)境下應(yīng)運(yùn)而生的。綜合的來講,它完全符合目前的趨勢(shì),可以說是真正意義上的一個(gè)具有開放性的綜合平臺(tái),不論是開發(fā)軟件的公司還是搞研發(fā)的個(gè)人,都可以用它來作為開發(fā)的基礎(chǔ)。在技術(shù)方面,由于它具有很強(qiáng)的可操作性,人們?cè)诰帉懗绦虻臅r(shí)候可以根據(jù)自己的意向來實(shí)現(xiàn),這樣就給開發(fā)者進(jìn)行創(chuàng)新提供了很大的可能。在成本方面,只要擁有編程的技術(shù)就可以在Android平臺(tái)上進(jìn)行功能的實(shí)現(xiàn),是很節(jié)約的,因此它就完全可以降低不少的成本。設(shè)計(jì)者們

27、可以在此基礎(chǔ)上設(shè)計(jì)出具有個(gè)性特色的各類應(yīng)用,所以,綜合用戶的需求,并從軟件這個(gè)很大的市場(chǎng)來說,Android很明顯具有很大的發(fā)展?jié)摿?。課題研究的意義和目的游戲,作為一種娛樂項(xiàng)目,在我們現(xiàn)在這樣會(huì)面臨很多壓力的生活中,真的是一類不可或缺的活動(dòng)。在我們的生活中,游戲的種類有千種萬種,不同的游戲也會(huì)給人帶來不同的放松和娛樂感受,正因?yàn)樗谋夭豢缮傩裕瑤?dòng)很大一部分人來研究越來越多的游戲,這不經(jīng)意間就豐盛了手機(jī)游戲行業(yè)。隨著歷史的發(fā)展,游戲也有了很大的發(fā)展和改變,從之前最簡(jiǎn)單的到后來在電視上進(jìn)行的游戲,繼而到pc游戲,再到現(xiàn)在的手機(jī)游戲,其發(fā)展過程也經(jīng)歷了很多樣的技術(shù)革新。隨著我們生活水平的日益發(fā)展

28、和新技術(shù)的偉大變革,手機(jī)逐漸在我們的生活中普及起來,它小巧玲瓏,功能強(qiáng)大,并且方便攜帶,這些特性都讓它最終成為我們生活中的必需品。隨著3g以至4g的開通及應(yīng)用,手機(jī)必然會(huì)迎來一輪更深層次的普及,而可以讓用戶在手機(jī)上玩游戲也就隨著手機(jī)火爆起來,因此這類游戲的研究還是有很大的發(fā)展空間的,必將會(huì)迎來手機(jī)用戶的追捧!五子棋,它可以說是一種棋牌類的游戲,是需要有一定的策略的。棋盤和圍棋是通用的,有黑色和白色棋子兩種,但規(guī)則相對(duì)來說就比較簡(jiǎn)單了,在我國(guó)古代,是比較流行的棋術(shù)之一。兩個(gè)人進(jìn)行游戲,各拿一個(gè)顏色的棋子,一人接一人輪流落子,經(jīng)過主動(dòng)進(jìn)攻或者是防守,直到有一方會(huì)出現(xiàn)五顆或者五顆以上的棋子連成一條線

29、,就判定這一方獲勝,那么游戲?qū)⒔Y(jié)束。由于落子之后棋子不像象棋那些可以隨意的移動(dòng)位置,有時(shí)候也是可以用紙質(zhì)的棋盤和筆來進(jìn)行的。該游戲由于規(guī)則簡(jiǎn)單,很容易就可以上手的,而且老少皆宜,玩起來比較有趣,不僅需要很好的策略,也需要隨時(shí)來處理不同的情況。這樣的游戲簡(jiǎn)單易玩,并且鍛煉思維,更對(duì)于小孩兒來說,可以開發(fā)智力。這些在手機(jī)上開發(fā)的游戲,更是對(duì)方便快捷悠閑的最好體現(xiàn)。五子棋會(huì)有很強(qiáng)大的客戶群,即使是之前完全沒有接觸過該游戲的人也可以輕而易舉的明白具體的玩兒法,并且會(huì)感覺到特別有趣;它是以手機(jī)平板平臺(tái)為主的,只要是裝載它的話就可以隨時(shí)來玩兒,這樣在人們感受特別方便的同時(shí),還可以享受現(xiàn)在這樣的高科技生活下

30、的悠閑;這個(gè)游戲還需要一定的策略,每走一步都會(huì)引起思考,但是卻不會(huì)給人帶來壓迫感,就是這樣略微輕松的思考,鍛煉了思維的同時(shí)也娛樂了身心。所以,綜合上述該游戲的各方面好處,設(shè)計(jì)在手機(jī)上可以進(jìn)行此游戲的應(yīng)用就顯得很重要了。本課題的目的是基于Android平臺(tái),設(shè)計(jì)出一款基于Android平臺(tái)的五子棋游戲,該游戲?qū)⒖梢酝嫒巳藢?duì)戰(zhàn)及人機(jī)對(duì)戰(zhàn)兩類??尚行匝芯窟@個(gè)階段,在對(duì)系統(tǒng)的目標(biāo)進(jìn)行了初步的調(diào)查和分析的基礎(chǔ)上,得出了一個(gè)可行性方案,并對(duì)其進(jìn)行了論證。本文主要從三個(gè)可行性方面進(jìn)行了分析,分別是技術(shù)、經(jīng)濟(jì)和操作。技術(shù)可行性技術(shù)可行性有很多因素要考慮到,比如說目前擁有的技術(shù)條件是否可以滿足使得游戲可以最終達(dá)

31、到計(jì)劃的要求,軟件和硬件的型號(hào)級(jí)別能否跟上完成的節(jié)奏等。本軟件用的是Java語言進(jìn)行的,它的操作相對(duì)來說比較簡(jiǎn)單,現(xiàn)在使用的計(jì)算機(jī)的硬件方面也完全跟得上研發(fā)的節(jié)奏。軟件方面:在不用聯(lián)網(wǎng)的模式已經(jīng)發(fā)展的很強(qiáng)大的前提下,軟件就有了很好的發(fā)展平臺(tái),它們具有很多的優(yōu)勢(shì),比如很快的速度、高的可靠性、低的價(jià)格和大的容量,系統(tǒng)的需求完全能夠得到滿足。所以從技術(shù)層面上講是一定可以的。我們經(jīng)常需要根據(jù)不同的客戶需求來設(shè)計(jì)出好多不同的功能,然后把這些功能嵌入整合到一個(gè)產(chǎn)品中,整合配置到那種大型的計(jì)算機(jī)系統(tǒng)中,這就是所謂的嵌入式系統(tǒng)。隨著時(shí)代一步步的發(fā)展,計(jì)算機(jī)慢慢在和通信技術(shù)融合,慢慢的深入到人們生活中的各個(gè)層面

32、,信息無處不在,獲取的方式越來越網(wǎng)絡(luò)化,信息化已經(jīng)成為一個(gè)不可避免的大趨勢(shì),所有在這樣一個(gè)大的背景下,嵌入式的發(fā)展也得到了不可估量的前景。目前的嵌入式已經(jīng)深入到我們?nèi)粘I钪械母鱾€(gè)行業(yè),它的使用或許也遠(yuǎn)遠(yuǎn)高過了普通的計(jì)算機(jī)系統(tǒng),包括通訊網(wǎng)絡(luò)等,。其中最典型的一個(gè)代表就是手機(jī)的嵌入式,給我們帶來了很大的便利,為我們的生活增添了很多不一樣的樂趣。經(jīng)濟(jì)可行性我們可以通過去圖書館借閱有關(guān)聯(lián)的圖書或者上網(wǎng)搜索等途徑來獲得開發(fā)該應(yīng)用所需要的有關(guān)聯(lián)的圖書資料,并且其中所需的應(yīng)用相關(guān)方面的軟件和硬件也是很容易找到的,總之所需的成本是比較低的,所以說從經(jīng)濟(jì)層面來看是可以的。操作可行性Eclipse 是一個(gè)開放源

33、代碼的研發(fā)平臺(tái),它是基于 Java 的,是可擴(kuò)展的。Eclipse是利用特殊規(guī)范的代碼來形成一個(gè)可供研發(fā)的程序,但是對(duì)于它自己而言,只是一個(gè)大概的結(jié)構(gòu)和一些可供使用的命令。令人欣慰的是Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT)。它主要由Eclipse項(xiàng)目、Eclipse工具項(xiàng)目和Eclipse技術(shù)項(xiàng)目三個(gè)項(xiàng)目組成,具體包括四個(gè)部分組成Eclipse Platform、JDT、CDT和PDE。JDT支持Java開發(fā)、CDT支持C開發(fā)、PDE用來支持插件開發(fā),Eclipse Platform則是一個(gè)開放的可擴(kuò)展IDE,它

34、構(gòu)造并且運(yùn)行了集成軟件開發(fā)工具的基礎(chǔ),提供構(gòu)造塊,并且向用戶提供了一個(gè)通用性的開發(fā)平臺(tái)。Eclipse Platform對(duì)任何一個(gè)工具可以實(shí)現(xiàn)的結(jié)果從什么地方開始或者別的從什么地方結(jié)束是沒有辦法區(qū)分的,因?yàn)樗幌拗乒ぞ叩闹圃煺吲c其他的工具是不需要格式的轉(zhuǎn)換的。Eclipse SDK(軟件開發(fā)者包)是Eclipse Platform、JDT和PDE所生產(chǎn)的組件合并,它們是不必要分開下載的。這些組合合并在一起共同組成了一個(gè)超級(jí)豐富并完善的可供開發(fā)的程序,開發(fā)者可以通過它建造一種工具,能夠不受限制不用進(jìn)行轉(zhuǎn)換格式就可以連接到Eclipse Platform。Eclipse SDK是由兩部分組成的,一

35、個(gè)是Eclipse項(xiàng)目生產(chǎn)的工具,另外的來自第三方軟件,它們是開放源代碼的。這兩部分的協(xié)議是不一樣的,其中第一部分Eclipse自己產(chǎn)生的軟件通過GPL發(fā)布,而第二部分的第三方軟件是具有自己的許可協(xié)議的7。從以上的論述可以看出,本軟件的開發(fā)完全具備技術(shù)、經(jīng)濟(jì)和操作三個(gè)方面的可行性。本章小結(jié)本章主要是從研究的背景、目的和意義三個(gè)方面對(duì)五子棋游戲在Android平臺(tái)上的研發(fā)和完成的情況進(jìn)行了詳細(xì)的介紹,并分析了該設(shè)計(jì)是不是可以運(yùn)行的,分別是技術(shù)、經(jīng)濟(jì)和操作三個(gè)方面。需求分析與系統(tǒng)設(shè)計(jì)在Android的系統(tǒng)上來研發(fā)五子棋游戲,并讓它順利運(yùn)行,這樣一個(gè)游戲的開發(fā)確保了用戶可以隨時(shí)隨地的進(jìn)行并且通過它來

36、鍛煉自己的大腦。通過本系統(tǒng),用戶只要使用Android手機(jī),并且安裝有本軟件,就可以再無聊之余一邊進(jìn)行五子棋游戲,一邊來感受這樣的小游戲帶來的清新與悠閑。用戶可以通過五子棋游戲來享受愉悅的游戲氛圍,娛樂自己,放松身心。需求分析與創(chuàng)新意義下面從在Android上來對(duì)五子棋游戲研發(fā)和運(yùn)行的幾個(gè)方面來展現(xiàn)五子棋游戲包含的樂趣,首先是游戲的簡(jiǎn)單需求分析,然后是簡(jiǎn)要的描述該系統(tǒng)的創(chuàng)新點(diǎn)和意義。系統(tǒng)的需求分析本系統(tǒng)的目的就是開發(fā)一個(gè)在Android上進(jìn)行研發(fā)的五子棋游戲,有人人對(duì)戰(zhàn)和人機(jī)對(duì)戰(zhàn)兩個(gè)類別供玩家選擇,這兩種類別的選擇或者切換玩家是可以利用操作不同的按鈕來進(jìn)行的。通過本系統(tǒng),用戶可以選擇人人對(duì)戰(zhàn)與

37、自己的好友一同進(jìn)行游戲,增進(jìn)朋友之前的友誼,也可以選擇人機(jī)對(duì)戰(zhàn),與功能強(qiáng)大的電腦一決高下。主要包括的功能有:人人對(duì)戰(zhàn),人機(jī)對(duì)戰(zhàn),關(guān)于。該系統(tǒng)功能全面,并且具有良好的界面和易用性,可以給用戶帶來全新的游戲體驗(yàn)。系統(tǒng)的創(chuàng)新與意義就目前android軟件市場(chǎng)上來說,已經(jīng)有很多類似的五子棋的游戲,但是大多游戲都只是人機(jī)對(duì)戰(zhàn),沒有實(shí)現(xiàn)人機(jī)對(duì)戰(zhàn)與人人對(duì)戰(zhàn)結(jié)合,本游戲的目的就是為了整合人機(jī)對(duì)戰(zhàn)與人人對(duì)戰(zhàn),將他們結(jié)合到一個(gè)游戲中。而且如果游戲者想要轉(zhuǎn)換或者改變游戲的屬性是可以通過摁游戲設(shè)置那個(gè)按鈕來進(jìn)行的,游戲設(shè)置那個(gè)按鈕設(shè)計(jì)在主界面上。在游戲設(shè)置中,用戶可以修改游戲的難易程度,游戲的趣味洗牌,是否標(biāo)記行和列

38、,是否為反向等等。系統(tǒng)的功能設(shè)計(jì)本系統(tǒng)主要分為三大塊,分別為人機(jī)對(duì)戰(zhàn),人人對(duì)戰(zhàn),關(guān)于。人機(jī)對(duì)戰(zhàn)人機(jī)對(duì)戰(zhàn)就是當(dāng)用戶點(diǎn)擊手機(jī)上的歡樂五子棋圖標(biāo)時(shí),進(jìn)入到主界面之后,可以摁那個(gè)人機(jī)對(duì)戰(zhàn)按鈕來開始。摁那個(gè)人機(jī)對(duì)戰(zhàn)的按鈕,屏幕會(huì)更改所選的界面。人機(jī)對(duì)戰(zhàn)中,默認(rèn)設(shè)置是白色棋子屬于電腦,而黑色棋子屬于玩家,并且在游戲過程中無論是玩家還是電腦,只要有一方所用的棋子有五顆及以上的棋子連在一起,則系統(tǒng)會(huì)判定該方獲勝,反之則失敗。人人對(duì)戰(zhàn)人人對(duì)戰(zhàn)就是當(dāng)用戶進(jìn)入到游戲最開的那個(gè)界面的時(shí)候,摁那個(gè)人人對(duì)戰(zhàn)按鈕從而開始的游戲。利用將講監(jiān)聽器與空間button綁定一起通過相應(yīng)算法實(shí)現(xiàn)摁那個(gè)人人對(duì)戰(zhàn)按鈕,屏幕將會(huì)更改到人人對(duì)

39、戰(zhàn)棋盤界面,該界面與人機(jī)對(duì)戰(zhàn)界面是一樣的,區(qū)別只是棋子所執(zhí)者不一樣。在該游戲過程中是沒有電腦人工智能計(jì)算機(jī)算法的。而是游戲玩家可以找一個(gè)自己的好朋友一起來玩游戲的。在人人對(duì)戰(zhàn)那個(gè)游戲中兩個(gè)人分別擁有白色和黑色棋子,應(yīng)為五子棋游戲規(guī)則就是黑子先行,所以默認(rèn)第一玩家為黑子,第二玩家為白子,并且在棋子的數(shù)組中儲(chǔ)存兩種顏色的點(diǎn)的圖樣分別是黑子為0白字為1,系統(tǒng)默認(rèn)第一個(gè)落子的玩家為黑子,第二個(gè)落子的玩家為白子。當(dāng)每次落子之后,系統(tǒng)會(huì)判斷一次是否獲勝當(dāng)黑色或者白色的棋子有五顆及以上連在一起的,則系統(tǒng)會(huì)判定該棋子所執(zhí)者獲勝,反之則失敗,并且會(huì)彈出對(duì)話框顯示“黑子獲勝”或者“白字獲勝”。關(guān)于當(dāng)用戶對(duì)此游戲有

40、疑問時(shí),比如該游戲的作者或者是該作者的信息等,可以點(diǎn)擊主界面的關(guān)于按鈕,這是屏幕上會(huì)出現(xiàn)一個(gè)對(duì)話框,上面詳細(xì)介紹所要看的內(nèi)容。系統(tǒng)的組成與實(shí)現(xiàn)原理下面從“歡樂五子棋”游戲的組成部分來闡述程序的設(shè)計(jì)原理。系統(tǒng)組成“歡樂五子棋”游戲主要包括三大功能點(diǎn),通過三大功能點(diǎn)來完成人人對(duì)戰(zhàn),人機(jī)對(duì)戰(zhàn),關(guān)于等功能。(如圖2.1所示)圖2.1 系統(tǒng)組成部分系統(tǒng)實(shí)現(xiàn)原理游戲是怎么樣運(yùn)行的,原理有下面幾點(diǎn):玩家用戶進(jìn)入該系統(tǒng)開始游戲后,系統(tǒng)調(diào)用的都是同一張棋盤,不管游戲者選擇的是人人對(duì)戰(zhàn)模式還是人機(jī)對(duì)戰(zhàn)模式,其中的區(qū)別只是在棋盤中所執(zhí)行的方法不同。不管游戲者選擇的人和人玩還是人和機(jī)玩,當(dāng)白子或者黑子,任意一種顏色的

41、棋子五顆及以上連在一起的時(shí)候,系統(tǒng)將判定該顏色棋子所執(zhí)者贏得了游戲(如圖2.2所示)。圖2.2 系統(tǒng)實(shí)現(xiàn)原理本章小結(jié)本章內(nèi)容主要是略微介紹了一下“歡樂五子棋”游戲的需求分析,創(chuàng)新與意義,還有三大功能模塊的設(shè)計(jì),同時(shí)對(duì)本系統(tǒng)的組成部分以及系統(tǒng)實(shí)現(xiàn)的原理進(jìn)行了詳細(xì)的分析說明,從而為接下來在編寫程序模塊時(shí)能夠思路清晰??蛻舳讼到y(tǒng)的實(shí)現(xiàn)在Eclipse中新建一個(gè)命名為MyGobang的Android工程,Build Target選擇Android2.2。在本工程中共有5個(gè)包10個(gè)類(如圖3.1所示)。圖3.1 五子棋游戲系統(tǒng)類全圖其中比較重要的類有:在activity包中,MyGobangActivi

42、ty.java類用來顯示該游戲的主界面。OfAllWarActivity.java類用來顯示人人對(duì)戰(zhàn)的界面。TheWarMachineActivity.java類用來顯示人機(jī)對(duì)戰(zhàn)的界面。在base包中,BaseComputerAi.java類用來存放人機(jī)對(duì)戰(zhàn)的算法,BasePlayer.java類用來存放人人對(duì)戰(zhàn)的算法。在entity包中,Chessboard.java類為棋盤類,改類用于棋盤界面的顯示。Point.java類為每顆棋子所落的點(diǎn)的實(shí)體類。在utils包中,HumanPlayer.java為人類玩家的一個(gè)實(shí)例。在res/layout中,有兩個(gè)文件需要被創(chuàng)建:游戲的原始界面的xml

43、文件是main.xml,play.xml文件為顯示棋盤的主界面。用戶進(jìn)入游戲第一次啟動(dòng)Android拼圖游戲程序會(huì)進(jìn)入到程序的主界面。在游戲的主界面中,用戶可以摁不同的功能選項(xiàng)按鈕來選擇對(duì)應(yīng)功能。例如游戲用戶可以綜合自己的喜好,通過點(diǎn)擊人人對(duì)戰(zhàn)、人機(jī)對(duì)戰(zhàn)或者是關(guān)于按鈕來分別進(jìn)入三類不同模式的界面(如圖3.2所示)。圖3.2 游戲主界面主要代碼如下:public void onCreate(Bundle savedInstanceState)super.onCreate(savedInstanceState); setContentView(R.layout.main); findViews()

44、;private void findViews()mHumanBtn = (Button) findViewById(R.id.button1);mComputerBtn = (Button) findViewById(R.id.button2);mAboutBtn = (Button) findViewById(R.id.button3);mHumanBtn.setOnClickListener(this);mComputerBtn.setOnClickListener(this);mAboutBtn.setOnClickListener(this);依據(jù)自己的喜好不同,用戶可以選擇摁原始面

45、上任何一個(gè)功能按鈕,即可以摁人和人玩的按鈕、人和機(jī)玩的按鈕或者關(guān)于按鈕來分別進(jìn)入人人玩模式、人機(jī)玩模式或者關(guān)于功能,進(jìn)而屏幕上將會(huì)轉(zhuǎn)換出所選擇按鈕對(duì)應(yīng)的框框來展示,每個(gè)Activity之間的轉(zhuǎn)換是通過Intent來實(shí)現(xiàn)的,Intent負(fù)責(zé)對(duì)應(yīng)中一次操作的動(dòng)作、動(dòng)作涉及數(shù)據(jù)、附加數(shù)據(jù)進(jìn)行描述,Andorid則根據(jù)此Intent的描述,負(fù)責(zé)找到對(duì)應(yīng)的組件,將Intent傳遞給調(diào)用的組件,并且完成組件的調(diào)用。在本程序中一共有三個(gè)Activity分別是主界面,人人對(duì)戰(zhàn)以及人機(jī)對(duì)戰(zhàn)界面,通過把事件與Button綁定一起,利用Intent意圖功能來實(shí)現(xiàn)Activity的相互調(diào)用,從而達(dá)到我們所預(yù)期的玩家可

46、以在主界面上選擇相應(yīng)模式,并且跳轉(zhuǎn)到相應(yīng)界面功能的效果,其中主體是通過Switch選擇語句實(shí)現(xiàn)的。主要代碼如下:public void onClick(View v)intent = new Intent();switch (v.getId()case R.id.button1:intent.setClass(this, OfAllWarActivity.class);startActivity(intent);break;case R.id.button2:intent.setClass(this, TheWarMachineActivity.class);startActivity(int

47、ent);break;case R.id.button3:new AlertDialog.Builder(this).setTitle(作者:麻博超).setMessage(學(xué)號(hào):09060118).setPositiveButton(確定,new DialogInterface.OnClickListener()public void onClick(DialogInterface dialog, int which)dialog.cancel();).show();break;人人對(duì)戰(zhàn)當(dāng)用戶玩家想要跳轉(zhuǎn)到人和人玩的界面,可以在主界面摁人人玩的按鈕來運(yùn)行。進(jìn)入該界面后,玩家自己可以扮演兩個(gè)角

48、色,或者用戶可以邀請(qǐng)一位好友,與好友一同切磋棋藝,(如圖3.3所示)。圖3.3 人人對(duì)戰(zhàn)界面主要代碼如下:protected void onCreate(Bundle savedInstanceState)super.onCreate(savedInstanceState);setContentView(R.layout.play);gameView = (Chessboard)findViewById(R.id.myBang);gameView.player2 = Chessboard.human;我們?cè)谶@里可以看到控制界面的Activity的setContentView()方法中的view

49、為play.xml。Play.xml文件的代碼如下: 這里的布局文件中的元素引用的是entity包中的ChessBoard.java類,這個(gè)類繼承的是view,作用是用于顯示棋盤。主要代碼如下:(1)這里把代表不同顏色的許多點(diǎn)分別存入數(shù)組Resources r = this.getContext().getResources();fillPointArrays(BLACK, r.getDrawable(R.drawable.black);fillPointArrays(WHITE, r.getDrawable(R.drawable.white);(2)設(shè)置畫線時(shí)用的顏色paint.setCol

50、or(Color.LTGRAY);(3)初始化好倆種顏色的點(diǎn)public void fillPointArrays(int color, Drawable drawable) Bitmap bitmap = Bitmap.createBitmap(pointSize, pointSize,Bitmap.Config.ARGB_8888);Canvas canvas = new Canvas(bitmap);drawable.setBounds(0, 0, pointSize, pointSize);drawable.draw(canvas);pointArraycolor = bitmap;(

51、4)以上代碼為初始化棋盤上的可以落子的點(diǎn),和初始化兩種顏色的棋子,但是棋盤上還要有橫豎相間的線,主要代碼如下:protected void onSizeChanged(int w, int h, int oldw, int oldh)maxX = (int) Math.floor(w / pointSize);maxY = (int) Math.floor(h / pointSize);xOffset = (w - (pointSize * maxX) / 2);yOffset = (h - (pointSize * maxY) / 2);createLines();restart();(5)

52、產(chǎn)生棋盤上所有的線private void createLines()for (int i = 0; i = maxX; i+)lines.add(new Line(xOffset + i * pointSize - pointSize / 2,yOffset, xOffset + i * pointSize - pointSize / 2, yOffset+ maxY * pointSize);for (int i = 0; i = maxY; i+)lines.add(new Line(xOffset,yOffset + i * pointSize - pointSize / 2, xOf

53、fset + maxX* pointSize, yOffset + i * pointSize - pointSize/ 2);(6)畫出棋盤private List lines = new ArrayList();private void drawChessboardLines(Canvas canvas)for (Line line : lines)canvas.drawLine(line.xStart, line.yStart, line.xStop, line.yStop,paint);(7)當(dāng)加載完棋盤之后,第一個(gè)玩家觸摸屏幕中的任意一個(gè)點(diǎn),將獲取到觸摸點(diǎn)的位置,主要代碼如下: pr

54、ivate Point newPoint(Float x, Float y)Point p = new Point(0, 0);for (int i = 0; i maxX; i+)if (i * pointSize + xOffset) = x& x (i + 1) * pointSize + xOffset)p.setX(i);for (int i = 0; i maxY; i+)if (i * pointSize + yOffset) = y& y (i + 1) * pointSize + yOffset)p.setY(i);return p;當(dāng)?shù)谝粋€(gè)用戶點(diǎn)擊某一個(gè)點(diǎn)之后,將黑子放到該

55、點(diǎn)上,第二個(gè)用戶點(diǎn)擊其他的點(diǎn),然后在這個(gè)點(diǎn)上放上白色的棋子,依次類推(如圖3.4所示)。圖3.4 人人對(duì)戰(zhàn)主要代碼如下:private void player1Run(MotionEvent event)Point point = newPoint(event.getX(), event.getY();if (allFreePoints.contains(point)setOnProcessing(); player1.run(player2.getMyPoints(), point); refressCanvas();if (!player1.hasWin()if (player2 = co

56、mputer) refreshHputerRunAfter(10); elsesetPlayer2Run(); else setMode(PLAYER_TWO_LOST);private void player2Run(MotionEvent event)Point point = newPoint(event.getX(), event.getY();if (allFreePoints.contains(point)setOnProcessing();player2.run(player1.getMyPoints(), point);refressCanvas();if (!player2.

57、hasWin() setPlayer1Run(); elsesetMode(PLAYER_ONE_LOST);當(dāng)有任何一種顏色的五顆及以上棋子出現(xiàn)連在一條線的情況,系統(tǒng)會(huì)判定該顏色棋子的所執(zhí)者取得勝利,反之另一方則失敗。并且一旦出現(xiàn)勝負(fù)的情況,玩家將不可以繼續(xù)下棋,即游戲結(jié)束(如圖3.5所示)。圖3.5 勝利狀態(tài)判斷橫向縱向是否有五顆棋子連成一條直線的代碼如下:public final boolean hasWin()if (myPoints.size() = 0 & count = 5)return true;temp.setX(x).setY(y);while (myPoints.cont

58、ains(temp.setX(temp.getX() + 1)& temp.getX() maxX & count = 5)return true; 縱向:判斷在所落子點(diǎn)的Y軸負(fù)方向與正方向分別存在子數(shù)count = 1;temp.setX(x).setY(y);while (myPoints.contains(temp.setY(temp.getY() - 1)& temp.getY() = 0)count+;if (count = 5)return true;temp.setX(x).setY(y);while (myPoints.contains(temp.setY(temp.getY(

59、) + 1)& temp.getY() maxY & count = 5)return true;判斷斜向是否有五顆棋子練成一條直線的代碼如下:正斜:判斷X軸負(fù)方向Y軸正方向以及X軸正方向Y軸負(fù)方向落子數(shù)。count = 1;temp.setX(x).setY(y);while (myPoints.contains(temp.setX(temp.getX() - 1).setY(temp.getY() + 1)& temp.getX() = 0 & temp.getY() = 5)return true;temp.setX(x).setY(y);while (myPoints.contains

60、(temp.setX(temp.getX() + 1).setY(temp.getY() - 1)& temp.getX() = 0 & count = 5)return true;反斜: 判斷X軸負(fù)方向Y軸負(fù)方向以及X軸正方向Y軸正方向落子數(shù)count = 1;temp.setX(x).setY(y);while (myPoints.contains(temp.setX(temp.getX() - 1).setY(temp.getY() - 1)& temp.getX() = 0 & temp.getY() = 0)count+;if (count = 5)return true;temp.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論