麻將游戲軟件的聽(tīng)牌牌型分析

麻將游戲軟件的聽(tīng)牌牌型分析

ID:19657151

大小:62.50 KB

頁(yè)數(shù):9頁(yè)

時(shí)間:2018-10-04

麻將游戲軟件的聽(tīng)牌牌型分析_第1頁(yè)
麻將游戲軟件的聽(tīng)牌牌型分析_第2頁(yè)
麻將游戲軟件的聽(tīng)牌牌型分析_第3頁(yè)
麻將游戲軟件的聽(tīng)牌牌型分析_第4頁(yè)
麻將游戲軟件的聽(tīng)牌牌型分析_第5頁(yè)
資源描述:

《麻將游戲軟件的聽(tīng)牌牌型分析》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。

1、麻將游戲軟件的聽(tīng)牌牌型分析:麻將游戲軟件的開(kāi)發(fā),就其內(nèi)核部分,大致可以分為自動(dòng)發(fā)牌、自動(dòng)智能出牌、吃碰杠的處理、聽(tīng)牌判斷、胡牌判斷、基于不同麻將玩法規(guī)則的番數(shù)計(jì)算等幾大部分。其中以自動(dòng)智能出牌、聽(tīng)牌判斷、胡牌判斷等處理最為復(fù)雜。這里主要介紹聽(tīng)牌牌型的算法設(shè)計(jì)思想。  關(guān)鍵詞:麻將游戲;聽(tīng)牌牌型;成牌牌型;VB6.0 ?。篢P311:A:1009-3044(2011)11-2602-03  麻將的牌局雖然復(fù)雜且變化無(wú)常,但構(gòu)成手中的13張牌也就只有兩類(lèi):數(shù)牌⑴、字牌⑵。聽(tīng)牌的牌型,也只可能是由此2類(lèi)中的1-2

2、類(lèi)組成,并且,其中一類(lèi)或一部分必須得是成牌牌型,另一類(lèi)或其一部分才能構(gòu)成聽(tīng)牌牌型⑶。如此理解后可知,要分析聽(tīng)牌,首先要分析最基本的單類(lèi)牌的聽(tīng)牌牌型。根據(jù)麻將的胡牌機(jī)理,數(shù)牌與字牌是屬不同的類(lèi)型,它們的聽(tīng)牌牌型分析要分別處理?! ?數(shù)牌的聽(tīng)牌牌型分析  數(shù)牌中雖包括條、筒、萬(wàn)牌,但同屬一類(lèi),對(duì)它們的聽(tīng)牌牌型分析方法是一樣的,下面以條為例來(lái)分析?! ?duì)于條而言,任何一次聽(tīng)牌時(shí),手中條的數(shù)量只可能是:0、1、2、4、5、7、8、10、11、13中的任一數(shù)目,其它數(shù)目的條均不能構(gòu)成聽(tīng)牌牌型。所以對(duì)于條的聽(tīng)牌牌型分析

3、,只限于數(shù)目為1、2、4、5、7、8、10、11、13的分析?! ?)1張牌的聽(tīng)牌牌型:A型,用[1]表示,定為基本聽(tīng)牌牌型。  2)2張牌的聽(tīng)牌牌型:只能是AA⑷、AB、AC型,用[2]表示,定為基本聽(tīng)牌牌型?! ?)4張牌的聽(tīng)牌牌型有:①ABCD、ABCF、AAAB等可分解成左或右三張是成牌牌型,聽(tīng)右或左[1]的,用[3]和[1]的組合表示(其中:[3]表示3張牌是成牌牌型,[1]表示1張牌是聽(tīng)牌牌型,稱(chēng)它是[3]和[1]的組合型);②AABB、AABC、AAAB等可分解成左或右二張是成牌牌型,聽(tīng)右或左

4、[2]的,稱(chēng)它是[2]和[2]的組合型;③ABBC型,不能用成牌牌型+基本聽(tīng)牌牌型[1]、[2]來(lái)分解的,稱(chēng)之為特殊聽(tīng)牌牌型?! ?)5張牌的聽(tīng)牌牌型有:①AAABB、AABCD等[3]和[2]組合型;②ABBBC、ABBCC、AABCC等特殊聽(tīng)牌牌型。  5)7張牌的聽(tīng)牌牌型有:①[2]和[5]、[3]和[4]、[5]和[2]、[6]和[1]的組合型;②AABBBCC等特殊聽(tīng)牌牌型?! ?)8張牌的聽(tīng)牌牌型有:①[6]和[2]、[3]和[5]的組合型;②AABBBCCC等特殊聽(tīng)牌牌型。  7)10張牌的聽(tīng)

5、牌牌型有:[2]和[8]、[3]和[7]、[6]和[4]等組合型?! ?)11張牌的聽(tīng)牌牌型有:[2]和[9]、[3]和[8]、[5]和[6]等組合型?! ?)13張牌的聽(tīng)牌牌型有:[2]和[11]、[3]和[10]、[5]和[8]等組合型?! ?數(shù)牌聽(tīng)牌牌型的計(jì)算機(jī)分析處理  計(jì)算機(jī)分析處理問(wèn)題時(shí),關(guān)系到數(shù)據(jù)結(jié)構(gòu)的知識(shí)。在此便是麻將在計(jì)算機(jī)中的存儲(chǔ)形式,分兩類(lèi):一是便于程序處理的具體代表單張麻將的符號(hào),如用Mi(i=1,2,……,9)代表?xiàng)l1到9;二是便于軟件界面顯示的具體單張麻將圖形。這里只說(shuō)程序的內(nèi)在

6、處理,對(duì)于條,這里采取的是常見(jiàn)的數(shù)組,用CARDm(14)來(lái)存儲(chǔ),其中,前13位存放手中可能有的條牌,第14位用于存放統(tǒng)計(jì)得到的手中條的總張數(shù)。如表1所示?! ?duì)于條數(shù)目為1、2、4、5、7、8、10、11、13的聽(tīng)牌牌型分析,則分別構(gòu)造過(guò)程來(lái)處理。下面以條數(shù)目為2、4處理算法為例來(lái)分析,其它略。開(kāi)發(fā)工具采用VB6.0。  1)兩張牌的聽(tīng)牌牌型分析  PublicSubListen2(card())  x21=Val(Right(card(1),1)):x22=Val(Right(card(2),1))  

7、Ifx21=x22Then'AA型的聽(tīng)牌  CallListenCardInsert(Left(card(2),1)+Trim(Str(x21)))  EndIf  ……'BC型的聽(tīng)牌分析略?! fx22-x21=2Then'AC聽(tīng)B型  CallListenCardInsert(Left(card(2),1)+Trim(Str(x22-1)))  EndIf  EndSub  2)四張牌的聽(tīng)牌牌型,這里只對(duì)ACCC型分析,其余略。  PublicSubListen4(card())  ……  Ifsca

8、rd3(card4133)=1then'后3張牌構(gòu)成成牌牌型,則聽(tīng)第1張牌  CallListenCardInsert(A)'把第1張牌插入存放聽(tīng)牌的數(shù)組  EndIf  Ifscard2(card4221)=1then'后2張牌構(gòu)成成牌牌型,則聽(tīng)前2張牌  CallListen2(card4222)'調(diào)用設(shè)計(jì)好聽(tīng)2張牌的過(guò)程Linsten2()  Endif  ……  EndSub  其中:數(shù)組card4133

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。