本人平常無聊就用扎金花來娛樂打發時間 今天閑來無事,用PHP 實現代碼之大小比賽扎金花兩副牌的比較規則就不說了,注明一下是順子的時候 : JQK < A23 < QKA
准備工作:源碼一套,測試源碼來自房卡扎金花源碼下載maliwl.com
1.隨機生成兩幅牌,每副牌結構為
2 . 計算每副牌的分值:每副牌有個原始大小(即排除對子,順子,金花,順金,筒子的大小),再
將每張牌的分值為一個2位數,不足2位的補前導0,例如'A':14,‘10’:10,’2‘:’02‘,’k‘:13,’7‘:07
將3張牌按點數大小排序(從大到小),湊成一個6位數。例如’A27':140702,‘829’:090802,‘JK8’:131108,‘2A10’:141002
例外,對於對子要將對子的位數放在前兩位(后面會看到為什么這么做)。例如‘779’:070709,‘7A7’:070714,‘A33’:030314
現在的分值是一個6位數,將對子設為一個原始值加上10*100000的值,現在為一個7位數。例如‘779’:1070709,‘7A7’:1070714,‘A33’:1030314
對於順子,將結果加上20*100000.。例如‘345’:2050403,‘QKA’:2141312,‘23A’:2140302
對於金花,將結果加上30*100000。例如‘Spade K,Spade 6,Spade J':3131106
因為順金的時候其實是金花和順子的和,所以順金應該是50*10000。 例如‘Spade 7,Spade 6,Spade 8':5080706
對於筒子,將結果加上60*100000。例如’666‘:6060606,’JJJ‘:6111111
3. 比較兩幅牌的大小(用所計算的分值來比較)
就這么簡單!!最終效果圖