js21点条件判断算法
Posted railgun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js21点条件判断算法相关的知识,希望对你有一定的参考价值。
根据下面的表格,每张卡牌都分配了一个值。如果卡牌的值大于0,那么玩家应该追加赌注。反之,追加少许赌注甚至不追加赌注。
Count Change | Cards |
---|---|
+1 | 2, 3, 4, 5, 6 |
0 | 7, 8, 9 |
-1 | 10, ‘J‘, ‘Q‘, ‘K‘,‘A‘ |
你需要写一个函数,实现21点算法,它根据参数 card
的值来递增或递减变量count
,函数返回一个由当前count
和 "Bet"
(count>0
)或"Hold"
(count<=0
) 拼接的字符串。注意count
和"Bet"
或 "Hold"
应该用空格分开。
想到有三种方法实现此功能,分别是采用if条件判断,数组以及switch选择语句。
采用if条件判断:
<script> var count=0; function cc(card){ if (card<=6&&card>=2){ count+=1; } else if (card>=7&&card<=9){ } else {
count-=1;
}
return count+" "+(count>0?Bet:Hold);
} </script>
采用数组的方式:
<script>
var count=0; function cc(card){ var x={2:1,3:1,4:1,5:1,6:1,7:0,8:0,9:0,10:-1,‘J‘:-1;‘Q‘:-1,‘K‘:-1;‘A‘:-1} count+=x[card]; return count+" "+(count>0?"Bet":"Hold") } </script>
采用switch选择语句:
<script> function cc(card){ switch (card){ case 2: case 3: case 4: case 5: case 6:count+=1;break; case 10: case ‘J‘: case ‘Q‘: case ‘K‘: case ‘A‘:count-=1;break; default:count+=0;break; } return count+" "+(count>0?"Bet":"Hold"); } </script>
通过这三种方法都可以实现需要的功能,第二种方法比较别出心裁。
以上是关于js21点条件判断算法的主要内容,如果未能解决你的问题,请参考以下文章