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

正文內(nèi)容

五子棋人機(jī)對(duì)戰(zhàn)設(shè)計(jì)方案-預(yù)覽頁(yè)

 

【正文】 下了,在將在以后的算法中體現(xiàn)。 if((pDC)==FALSE) AfxMessageBox(Can39。410amp。410) { int px=()/20。wzq[px][py]==0) { (m_bmwhite)。 over(point)。 } } } //人對(duì)人 if(vsputer==2) { if(30amp。30amp。 if(colorwhiteamp。Dc,0,0,SRCCOPY)。 } else if(wzq[px][py]==0) { (m_bmblack)。 over(point)。而對(duì)于計(jì)算機(jī)怎么下棋,我們只是用了一個(gè)函數(shù)puterdown()表示。計(jì)算機(jī)是怎樣下棋?這就是定位的問題了。 //不是以上情況,這個(gè)位置空 并在搜索之前都賦值為(1,1),然后,進(jìn)行搜索,并把相應(yīng)的值保存在相應(yīng)變量里面,而如果前面已經(jīng)對(duì)變量賦值,我們依然賦值,用新值代替舊值。puterdown()函數(shù)如下: wpointcan3=(1,1)。 //搜索最好的落棋點(diǎn) for(int i=0。j++) bestputdown(i,j)。 return。 return。 return。//放下黑棋 void putdown(CPoint point)。由于putdown(CPoint point)函數(shù)的原理非常簡(jiǎn)單,我們先說(shuō)明如下:t create DC)。 wzq[][]=1。 over(overpoint)。 現(xiàn)在就剩下void bestputdown(int i,int j)函數(shù)沒有定義了(雖然前面的變量函數(shù)已經(jīng)說(shuō)明了,當(dāng)時(shí)我們這里是用程序擴(kuò)展的思路進(jìn)行的,故如此說(shuō)明)。在每一個(gè)棋盤位置,計(jì)算以它為起點(diǎn)的四個(gè)方向(橫、豎、撇、捺),再比較這四個(gè)方向中哪個(gè)值最大,然后在這個(gè)方向上尋找落棋點(diǎn)。 /////////////////////////////// num[0] a=0。 num[0]=abs(a)。k++) a=a+wzq[i][j+k]。amp。 num[2]=abs(a)。(j15)) for(k=0。 //在得到最大值和方向上尋找落棋點(diǎn) switch() { case 4: searchcandown4(i,j,)。 case 2: searchcandown2(i,j,)。同樣的方法,我們必須為上面還沒有定義的函數(shù)添加空函數(shù)。 void searchcandown3(int i,int j,int n)。327最大值函數(shù)的實(shí)現(xiàn) } else { =1。 } if(d) { =3。而另外的四個(gè)函數(shù),有其相似性,分別介紹如下:328個(gè)大函數(shù)的實(shí)現(xiàn)與功能k5。 } else { //下面位置可以下棋,已經(jīng)有四個(gè)黑棋 =i。 =j。 break。 =j。 break。 } else { =i。k5。 } else { =i。 =j+k。 break。 =j。 break。 } else { =ik。前一種必定能找到一個(gè)空位置,賦值;后一種必定找不到空位置,不賦值。 ///////////////////////////// num[0] if(n==0) for(k=0。 } //下一個(gè)是黑棋 else if(wzq[i+k+1][j]==1) { =i+k。k++) if(wzq[i][j+k]==0) { if(wzq[i][j+k1]==1) { =i。 } } /////////////////////////////// num[2] \ if(n==2) for(k=0。 } else if(wzq[i+k+1][j+k+1]==1) { =i+k。k++) if(wzq[ik][j+k]==0) { if(wzq[ik1][j+k+1]==1) { =ik。 } } }前者先找到空位置,再判斷它下面兩個(gè)是否同色,同色則賦值給相應(yīng)變量,異色則不賦值,因?yàn)橐饬x不大;后者只要找到一個(gè)空位置就行了。k5。a++) //找到空位置 if(wzq[i+a][j]==0) { //下面兩個(gè)棋子值的和 b=wzq[i+a+1][j]+wzq[i+a+2][j]。 =j。b5。 } } else //如果兩個(gè)是白棋 if(wzq[i+a][j]==1) { for(b=0。 break。k++) if(wzq[i][j+k]==0) m++。 if(b==2) { =i。 } } if(m==3) { for(a=0。b++) if(wzq[i][j+b]==0) { =i。b5。 } } } } /////////////////////////////// num[2] \ m=0。 if(m==1) for(a=0。 =j+a。a5。 =j+b。b++) if(wzq[i+b][j+b]==0) { =i+b。 if(n==3) { for(k=0。a5。 } if(b==2) { =ia。a++) if(wzq[ia][j+a]==1) { for(b=0。 break。 =j+b。最后的一個(gè)函數(shù)是searchcandown1(int i, int j, int n),這是為了預(yù)防用的,如果以上情況不發(fā)生怎么辦,總該下棋吧!而這個(gè)函數(shù)就是為了它而生的。 int jj=()/20。a++) //如果不到邊界 if(ii+a19) { //向右,如果有空位置 if(wzq[ii+a][jj]==0) { //在這個(gè)位置下黑棋 =ii+a。 =jj。圖41 游戲?qū)崿F(xiàn)第五章 總結(jié)通過(guò)本次課程設(shè)計(jì),熟練地掌握一門程序設(shè)計(jì)語(yǔ)言——C++語(yǔ)言,學(xué)會(huì)了怎樣進(jìn)行一個(gè)項(xiàng)目的需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)等軟件開發(fā)過(guò)程,熟練地掌握該程序設(shè)計(jì)環(huán)境的使用方法的配置,培養(yǎng)起初步的項(xiàng)目分析能力和程序設(shè)計(jì)能力,把理論與實(shí)踐相結(jié)合,達(dá)到學(xué)習(xí)C++語(yǔ)言的技術(shù)和熟悉軟件開發(fā)流程的目的,為今后工作打下堅(jiān)實(shí)的基礎(chǔ)。 Visual C++.NET 技術(shù)內(nèi)幕(第6版)》,潘愛民,清華大學(xué)出版社,1999年10月。 Visual C++教程》,鄭阿奇,清華大學(xué)出版社,2005年7月23
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1