QT五子棋游戲設計課程設計報告_第1頁
QT五子棋游戲設計課程設計報告_第2頁
QT五子棋游戲設計課程設計報告_第3頁
QT五子棋游戲設計課程設計報告_第4頁
QT五子棋游戲設計課程設計報告_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

經(jīng)典word整理文檔,僅參考,雙擊此處可刪除頁眉頁腳。本資料屬于網(wǎng)絡整理,如有侵權,請聯(lián)系刪除,謝謝!2013-2014學年秋季學期《Windows程序設計》課程設計報告學序院:號:名:號:計算機與信息學院56學指導教師:完成時間2014年05月29日目錄...............................................................1...................................................1...............................................1...............................................................2...................................3...................................................................4...........................................................................4...........................................................................6...........................................................................7①.............................................................7②............................................................................................................................通過所學的知識和技術,在老師的幫助下以及自己查詢資料,完成對五子棋游戲的編程實現(xiàn),使程序支持人人戰(zhàn),并且可以完成判斷輸贏,悔棋,從新開始等基本功能。本次課程設計的課題簡單,且娛樂性強。在完成課題的過程中可以很好的復對網(wǎng)絡資源的有效利用有了更深的體會。課程設計的內(nèi)容:本次設計將提供一個“五子棋”的游戲程序,可完成的功課程設計的要求:使用QT軟件開發(fā),語言使用。本系統(tǒng)主要分為輸入模塊、輸出模塊和判斷模塊這三大塊。各模塊依據(jù)所屬功能的不同來劃分。斷和對用戶悔棋和從新開始等操作命令的響應。本次采用了QT進行程序設計,對于圖形界面有較好的處理方法和環(huán)境。1是否悔棋是否從新開始是否退出圖圖1是系統(tǒng)的總體模塊圖,依據(jù)系統(tǒng)的不同功能包含3個大的模塊:輸入模解釋。這里只是對系統(tǒng)功能實現(xiàn)有一個初步的了解。2設計過程說明:圖圖2給出了整個系統(tǒng)的流程圖,簡單直觀的使系統(tǒng)一目了然。下面開始分析整個系統(tǒng)的流程。一步。3基本分為:輸入模塊、輸出模塊、判斷模塊將用戶輸入的數(shù)據(jù)記錄,并輸入給程序。本系統(tǒng)采用的是鼠標事件輸入,用戶用鼠標點擊棋盤上的格子,系統(tǒng)將記錄并在棋盤上顯示。部分代碼:voidMainWindow::mousePressEvent(QMouseEvent*e){intm,l=1,n;x=e->pos().rx();x=(x/50)*50;y=e->pos().ry();y=(y/50)*50;if(color[y/50][x/50]==1||color[y/50][x/50]==2);//判斷是否已有標簽else{label[j][j1]=newQLabel(this);if((j1+temp)%2==0){label[j][j1]->setGeometry(x,y,50,50);label[j][j1]->setStyleSheet("background-color:black;border-radius:25px");color[y/50][x/50]=1;if(win==0)label[j][j1]->show();if(j1==9){j++;}}else{label[j][j1]->setGeometry(x,y,50,50);label[j][j1]->setStyleSheet("background-color:gray;border-radius:25px");color[y/50][x/50]=2;if(win==0)label[j][j1]->show();if(j1==9){j++;}4}k=check(color[j][j1],y/50,x/50);if(k==1){player=newQMediaPlayer();player->setMedia(QUrl::fromLocalFile("/E:/qt_data/music/勁樂團-卡農(nóng).mp3"));player->play();QMessageBox::warning(this,tr("haha"),tr("你獲勝啦!"),QMessageBox::Yes);win=1;}if(j1==9)j1=0;elsej1++;}}5棋盤的部分代碼:6判斷模塊分為判斷命令模塊和判斷輸贏模塊。①的判斷。贏圖4:判斷輸贏模塊流程圖7判斷輸贏模塊的具體工作原理由圖4可以清晰直觀的看到。為了完成判斷輸贏模塊的編碼實現(xiàn),首先要了解五子棋輸贏的規(guī)則。五子棋繼續(xù)判斷這時候是否有五顆棋子滿足要求,然后這樣循環(huán)。下棋。了。判斷輸贏模塊的部分代碼:intMainWindow::check(intn,intm,intp)//判斷是否五子相連{l=1;intk=m,k1=p;for(inti=0;i<10-p;i++)/*橫向右判斷是否五子相連*/{if(color[k][p]==color[k][++k1]){l++;if(l==5)return1;}elsebreak;}k1=p;for(i=p-1;i>=0;i--)/*橫向左判斷是否五子相連*/{if(color[k][p]==color[k][--k1]){l++;if(l==5)return1;}elsebreak;}k=m;k1=p;l=1;for(i=0;i<10-m;i++)/*豎向上判斷是否五子相連*/{if(color[k][p]==color[++k][k1]){8l++;if(l==5)return1;}elsebreak;}k=m;k1=p;for(i=m-1;i>=0;i--)/*豎向下判斷是否五子相連*/{if(color[k][p]==color[--k][k1]){l++;if(l==5)return1;}elsebreak;}k=m;k1=p;l=1;if(m<=9-p)t=m;elset=9-p;for(i=0;i<t;i++)/*135度向上判斷是否五子相連*/{if(color[m][p]==color[--k][++k1]){l++;if(l==5)return1;}elsebreak;}k=m;k1=p;if(p<=9-m)t=p;elset=9-m;for(i=t-1;i>=0;i--)/*135度向下判斷是否五子相連*/{if(color[m][p]==color[++k][--k1]){l++;if(l==5)return1;}elsebreak;}k=m;k1=p;l=1;if(m<p)t=m;9elset=p;for(i=0;i<t;i++)/*45度向上判斷是否五子相連*/{if(color[m][p]==color[--k][--k1]){l++;if(l==5)return1;}elsebreak;}k=m;k1=p;if(p<m)t=9-m;elset=9-p;for(i=t-1;i>=0;i--)/*45度向上判斷是否五子相連*/{if(color[m][p]==color[++k][++k1]){l++;if(l==5)return1;}elsebreak;}if(l!=5)return0;}是對系統(tǒng)功能的一個拓展和優(yōu)化,有利于用戶更方便舒適的操作系統(tǒng),加強五子棋游戲的娛樂性。這一部分的流程圖如下:圖5:判斷命令模塊流程圖如圖5給出了系統(tǒng)判斷命令模塊的流程圖。如圖知道當用戶下棋后,系統(tǒng)首先會判斷用戶是否需要從新開始游戲,如果戶繼續(xù)下棋。下棋后重復這個判斷流程。下面附上判斷命令模塊的部分代碼:voidMainWindow::huiqi()//悔棋的代碼{label[j][j1-1]->close();color[y/50][x/50]=0;if(temp==0)temp=1;elsetemp=0;}voidMainWindow::init()//初始化界面{player->stop();intt2,t3;for(t2=0;t2<1

溫馨提示

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

評論

0/150

提交評論