有13张扑克牌,怎样确定牌中有没有顺子(顺子:连续的5张牌)
有13张扑克牌,怎样确定牌中有没有顺子(顺子:连续的5张牌)
分析思路如下:
1.可能出现的牌为数字(2-10)、(J-K,A,大小王),先将不能直接作为数字排列的牌替换成数字;
2.将整个数组转换为数字类型;
3.将数组从小到大进行排序;
4.做出判断,当数组中连续的牌大于等于5张时(即后一张牌减去前一张牌的数字达到连续4组),即判断为有顺子。
具体代码如下:
package calculate;public class Poker {public static void main(String[] args) {String[] poker=new String[] {"3","5","6","A","K","5","J","2","5","7","2","8","10"};int[] num=new int[poker.length];//将J,Q,K,A,2,大王,小王都转成数字for(int i=0;inum[j+1]) {int temp=num[j];num[j]=num[j+1];num[j+1]=temp;}}}//当数组中后一位减前一位数字=1连续超过4组,则判断有顺子,否则没有int count=1;for(int i=0;i=4) {System.out.println("有顺子");}else {System.out.println("没有顺子");}}else if(num[i+1]-num[i]!=1) {count=0;}}}}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
