PHP实现金花游戏大小游戏的方法

本文介绍了php实现金华游戏大小游戏的方法,供大家参考,具体分析如下:

该程序与算法不可分离,讨论了路径搜索算法,但在时间的实例图中,可选路径是唯一的,我们选择一个算法,即选择唯一路径,以及如何选择路径。

我记得在初中的时候,我经常下午去上学,我把钱藏在路边。我对它上瘾了。现在我经常在金华花钱,在过年的时候花钱。但运气不好,每次都是失败。

今天,太阳很美,因为清明节出去玩了,所以今天没有去的地方。在考虑如何用这个程序来比较金华的两张卡后,我意识到有些方法现在很重要,所以我会记录下来。

好的,不要浪费。

两对牌的比较规则不说,这是顺子的时间:印度< < QKA A23

思想:少年之花

1。随机生成两张牌,每张牌结构为

复制代码代码如下:数组(

阵列('spade,k),

阵列('club,6'),

阵列('spade,J'),



复制代码代码如下:数组(

阵列('spade,k),

阵列('club,6'),

阵列('spade,J'),



2。计算每张卡片的价值:每张卡片有一个原始大小(不包括这对,顺子,金花,独联体黄金,线轴的大小),

每张卡的分数是2位数,不足2位的补充指南0,如'A ':14,10:10,2':102,k:13,7':07

3张牌的点数排序(从大到小)一起在一个6位数的号码。例如,'a27:140702,829:090802,jk8:131108,可:141002

例外,对应该放在第一位的两对的数目(然后看看为什么要做的)。例如,779:070709,:070714,7A7 A33:030314

目前的价值是一个6位数的号码,并对设置为10×100000的值的原始值,现在是一个7位数的号码。例如,779:1070709,:1070714,7A7 A33:1030314

顺子,把结果20×100000。例如,345:2050403、QKA:2141312,23a:2140302

为金花,添加的结果为30×100000.for例子,黑桃K,黑桃6,Spade J:3131106

因为当黄金实际上是金花和顺子,所以顺金应为50×10000.for例子,黑桃7,黑桃6,黑桃8:5080706

为骨架,将结果60×100000.for例子,'666:6060606、'jjj:6111111

三.比较两张卡片的大小(与计算值比较)

很简单!

代码如下(PHP)

复制代码代码如下:< PHP

类麻

{

公共服=阵列('spade美元,心、'diamond ','club);

公众人物=美元阵列(2,3,4,5,6,7,8,9,10'。

公共$卡=数组();

公共功能__construct()

{

卡=数组();

foreach(美元美元->服套装){

foreach(美元->数据为美元){

美元卡(数组);

}

}

这张卡片;

}

公共功能getcard()

{

洗牌(这张卡);

生成3张卡片

返回的数组(array_pop(美元->卡),array_pop(美元->卡),array_pop(美元->卡));

}

公共功能comparecards(美元卡,$ card2)

{

1美元=美元-> ownscore(美元卡);

score2美元=美元-> ownscore($ card2);

如果($ 1 > score2美元)返回1;

($ 1 << score2美元)返回1;

返回0;

}

私有函数ownscore(美元卡)

{

$ = =数组();

foreach($卡$ V){

$ { } = $ { 0 };

美元($ V array_search { } = { 1 },美元->数字)+ 2;

}

领先的0人

($ i = 0;$ i < 3;$ + +){

美元{ $我} = str_pad(合图{我},2,'0',str_pad_left);

}

rsort(美元);

进行特殊处理

如果($ { 1 } = $图{ 2 }){

$ $图{ 0 };

$ { 0 } = $ { 2 };

$ { 2 } = $;

}

$ = $图0 }。$ { 1 },$ { 2 };

干酪 60 * 100000

如果($ { 0 } } =图{ 1 } },图{ 0 } } =图{ 2 }){

$ = 60 * 100000;

}

金华/ 30 * 100000

如果($ { 0 } = $ 2),{ { { 1 } } 0

$ = 30 * 100000;

}

顺子20 * 100000

如果(合图{ 0 } = = $图{ 1 } + 1美元{ 1 } = = $图{ 2 } + 1 | |崩溃(美元)= = '140302){

$ = 20 * 100000;

}

在10 * 100000上

如果($ { 0 } } =图{ 1 } },图{ 1 }!= $ { 2 }){



$ = 10 * 100000;

}

返回分数;

}

}



测试

$牌=新的纸牌游戏();

卡牌->美元=美元getcard();

card2美元=美元牌-> getcard();

$result = $playCard->compareCards ($card1, $card2);

Echo'card1 is', printCard ($card1), '';

echo'card2是' PrintCard($ card2),;

$str = 'card1权益card2;

如果($结果= = 1)$str = 'card1大于card2;

($结果= = 1)$str = 'card1小于card2;

回声$;

功能PrintCard(美元卡)

{

($ =;

foreach($卡$ V){

0美元1美元;

}

返回修剪($,',')。;

}

复制代码代码如下:< PHP

类麻

{

公共服=阵列('spade美元,心、'diamond ','club);

公众人物=美元阵列(2,3,4,5,6,7,8,9,10'。

公共$卡=数组();

公共功能__construct()

{

卡=数组();

foreach(美元美元->服套装){

foreach(美元->数据为美元){

美元卡(数组);

}

}

这张卡片;

}

公共功能getcard()

{

洗牌(这张卡);

生成3张卡片

返回的数组(array_pop(美元->卡),array_pop(美元->卡),array_pop(美元->卡));

}

公共功能comparecards(美元卡,$ card2)

{

1美元=美元-> ownscore(美元卡);

score2美元=美元-> ownscore($ card2);

如果($ 1 > score2美元)返回1;

($ 1 << score2美元)返回1;

返回0;

}

私有函数ownscore(美元卡)

{

$ = =数组();

foreach($卡$ V){

$ { } = $ { 0 };

美元($ V array_search { } = { 1 },美元->数字)+ 2;

}

领先的0人

($ i = 0;$ i < 3;$ + +){

美元{ $我} = str_pad(合图{我},2,'0',str_pad_left);

}

rsort(美元);

进行特殊处理

如果($ { 1 } = $图{ 2 }){

$ $图{ 0 };

$ { 0 } = $ { 2 };

$ { 2 } = $;

}

$ = $图0 }。$ { 1 },$ { 2 };

干酪 60 * 100000

如果($ { 0 } } =图{ 1 } },图{ 0 } } =图{ 2 }){

$ = 60 * 100000;

}

金华/ 30 * 100000

如果($ { 0 } = $ 2),{ { { 1 } } 0

$ = 30 * 100000;

}

顺子20 * 100000

如果(合图{ 0 } = = $图{ 1 } + 1美元{ 1 } = = $图{ 2 } + 1 | |崩溃(美元)= = '140302){

$ = 20 * 100000;

}

在10 * 100000上

如果($ { 0 } } =图{ 1 } },图{ 1 }!= $ { 2 }){



$ = 10 * 100000;

}

返回分数;

}

}



测试

$牌=新的纸牌游戏();

卡牌->美元=美元getcard();

card2美元=美元牌-> getcard();

$result = $playCard->compareCards ($card1, $card2);

echo'card1 PrintCard,(美元卡),;

echo'card2是' PrintCard($ card2),;

$str = 'card1权益card2;

如果($结果= = 1)$str = 'card1大于card2;

($结果= = 1)$str = 'card1小于card2;

回声$;

功能PrintCard(美元卡)

{

($ =;

foreach($卡$ V){

0美元1美元;

}

返回修剪($,',')。;

}

希望本文能对大家的PHP程序设计有所帮助。