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

正文內(nèi)容

基于android的五子棋游戲設(shè)計與實現(xiàn)-計算機科學(xué)與技術(shù)本科畢業(yè)論文(參考版)

2024-11-08 07:16本頁面
  

【正文】 由于我的學(xué)術(shù)水平有限,所寫論文難免有不足之處,懇請各位老師和學(xué)友批評和指正 。如果沒有他們,我將很難完成本篇論文的寫作。 19 主要參考文獻 [1] E2ECloud 工作室 . 深入淺出 Google Android[M]. 北京:人民郵電出版社 , 2020. [2] 孔令德 . 畢業(yè)設(shè)計案例教程 — 從系統(tǒng)開發(fā)到論文寫作 [M]. 北京:國防工業(yè)出版社 , 2020. [3] 勒巖 . Android 開發(fā)入門與實戰(zhàn) [M]. 北京:人民郵電出版社 , 2020. [4] 王克宏. Java 技術(shù)教程 (基礎(chǔ)篇 )[M]. 北京:高等教育出版社 , 2020. [5] 王小春 . PC 游戲編程 (人機博弈 )[M]. 重慶 :重慶大學(xué)出版社 , 2020. 20 致 謝 歷時 良久 終于將這篇論文寫完,在論文的寫作過程中遇到了無數(shù)的困難和障礙,都在老師 和同學(xué)們 的幫助下度過了。這是一次意志的磨練,是對我實際能力的一次提升,相信對我未來的學(xué)習(xí)和工作有很大的幫助。當我們看到自己的努力有收獲的時候,總是會有那么一點點自豪和激動。認真的閱讀,總結(jié)筆記,為自己的論文打好基礎(chǔ)。后來,在與導(dǎo)師的交流討論中我的題目定了下來 ,我便立刻在學(xué)校的圖書館和網(wǎng)上找了一些著手資料的收集工作中,當時面對眾多網(wǎng)絡(luò)資料庫的文章真是有些不知所措,不知如何下手。經(jīng)過很久的努力,終于在 2020 年 5月份完成了畢業(yè)論文。我在2020 年 4月開始了我的畢業(yè)論文工作,認真總結(jié),經(jīng)過長時間的寫作到現(xiàn)在論文基本完成。在遇到問題是,不要有害怕困難的情緒,解決問題也是一個不斷學(xué)習(xí)進步的過程,遇到的問題越多,學(xué)到的東西也就越多。在編碼實現(xiàn)的時候,會出現(xiàn)一些開始完全意料不到的問題,也許這些問題當中,有的是老師講過的,不過我想大部分還是老師沒有講過,這個時候就是體現(xiàn)出自己解決問題的能力的時候了。首先要自己先自學(xué)一下 Android 的游戲編程,雖 然和 JAVAME 的思想差不多,但是 Android 上有許多的控件和類在 JAVAME 上是沒有的,在這方面我遇到了很大的難題。 圖 54游戲界面 退出界面 游戲退出時的界面如圖 55所示。 圖 52 游戲的幫助界面 五子棋介紹界面 五子棋的介紹界面如圖 53所示。 5 游戲的實現(xiàn) 游戲主界面 游戲的主界面如圖 51所示。為了性能,在第一次計算前,必須確定一個較小的計算范圍,不能全部都算。 //活 2 數(shù)量 int alive2 = 0。 //半活 4,一頭封的 int halfAlive4 = 0。 //活 4 int alive4 = 0。 } 因為第一次計算的結(jié)果對一個棋位都會形成四個結(jié)果(每個方向一個結(jié)果)這一步將這些結(jié)果匯總到一個類對象中 第二次計算。 //狀態(tài) int aliveState。對應(yīng)的結(jié)果類: FirstAnalysisResult{ //棋位 Point point。 currentMode = READY。 }else if(currentMode==READY){ ()。 currentMode = READY。 } 提示游戲結(jié)束 //設(shè)置運行狀態(tài) public void setMode(int newMode) { currentMode = newMode。 } if(count=5){ return true。amp。amp。amp。 } (x).setY(y)。 ()=0) { count ++。 ()=0 amp。 while (((()1).setY(()1)) amp。 } //反斜 \ count = 1。 count6) { count ++。 ()=0 amp。 ()maxX amp。 While (((()+1).setY(()1)) amp。 } if(count=5){ return true。amp。amp。 (x).setY(y)。 } if(count=5){ return true。amp。amp。 } (x).setY(y)。 ()=0) { count ++。 while (((()1)) amp。 12 } //縱向 count = 1。 count5) { count ++。 ()maxX amp。 while (((()+1)) amp。 } if(count=5){ return true。amp。amp。 //橫向 (x).setY(y)。 int count = 1。 //我是否是否贏了 public final boolean hasWin(){ if(()5){ return false。 }else{ //否則,提示游戲結(jié)束 setMode(PLAYER_ONE_LOST)。 //刷新一下棋盤 refressCanvas()。 } if((point)){//此棋是否可下 setOnProcessing()。 } } } 玩家二下棋的方法 private void player2Run(MotionEvent event){ Point point = newPoint((), ())。 }else{ setPlayer2Run()。 //刷新一下棋盤 refressCanvas()。 } if((point)){//此棋是否可下 //設(shè)置正在下棋子 setOnProcessing()。 } } 玩家一下棋的方法 private void player1Run(MotionEvent event){ //取得正確座標的棋子 Point point = newPoint((), ())。 } playerRun 方法判斷輪到誰下棋子 private synchronized void playerRun(MotionEvent event){ if(isPlayer1Run()){//第一玩家下棋 player1Run(event)。 } //下一步棋 playerRun(event)。 } 改寫 onTouchEvent 方法,監(jiān)聽觸摸事件,在觸摸處下棋子 //處理觸摸事件 public boolean onTouchEvent(MotionEvent event) { //只處理開局后的觸摸彈起事件 if(()!=){ return true。 } //正在下的過程中,主是因為電腦有 較長的計算時間,這期間一定不可以再響應(yīng)觸摸事件 private void setOnProcessing(){ 9 whoRun = 1。 } //是否輪到人類玩家下子 private boolean isPlayer2Run(){ return whoRun==2。 private void setPlayer1Run(){ whoRun = 1
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1