急求用java编写一个程序使五张扑克牌是同花顺
发布网友
发布时间:2022-04-26 09:08
我来回答
共1个回答
热心网友
时间:2022-06-26 10:04
public class TestStraightFlush {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Card[] cards = new Card[] {
new Card("Spade", 5),
new Card("Spade", 6),
new Card("Spade", 7),
new Card("Spade", 8),
new Card("Spade", 9)
};
System.out.println(isSF(cards)?"是同花顺":"不是同花顺");
}
// 判断是否同花顺
static boolean isSF(Card[] cards) {
// 判断花色
String suit = cards[0].getSuit();
int min = cards[0].getNum();
int max = cards[0].getNum();
for (int i = 1; i < cards.length; i++) {
// 有花色异常则返回false
if (!suit.equals(cards[i].getSuit()))
return false;
//
int num = cards[i].getNum();
if (num > max)
max = num;
else if (num < min)
min = num;
// 最后一张牌,确定max和min是所有牌的最大和最小
if (i == cards.length - 1)
//最大比最小大4,说明是同花顺
return (max - min) == 4;
}
return true;
}
}
// 扑克牌类
class Card {
String suit;// 花色
int num;// 大小
public String getSuit() {
return suit;
}
public void setSuit(String suit) {
this.suit = suit;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public Card(String suit, int num) {
super();
this.suit = suit;
//1按照14理解
if(num == 1)
this.num = 14;
else
this.num = num;
}
}
用java如何判断扑克牌同花顺
0.0 : check.indexOf(er2.getNum()));return org1.compareTo(org2);}});for (int i = 0; i < card.size()-1; i++) {//遍历所有的牌,如果颜色不一样直接跳出循环,不是同花顺if(!card.get(i).getColor().equals(card.get(i+1).getColor())){flage =false;break;}//如果上...
java 判断是否是同花顺
简单说一下,算法是否最优需要计算一下,我说一下算法的大概构想,我们假定牌类 有花色和大小两个属性,首先可以遍历所有N张牌,将不同的花色的牌分别开,放到对应的list或者相应的数据结构中 然后排序判断不同的list中牌的大小,排序算法楼主可以自行选择,在排序的过程中可以插入判断是否存在“顺”的...
求用c语言或c++,编写判断五张扑克是同花顺等类型的问题。
1、是不是同花 2、判断类型 判断过程:1.进行排序--->2.排序后进行相邻的两两相减--->3.在每次相减的时候对结果进行记录--->若只有一个0,则为一对;2个连续0则为三条;2个不连续的0则为三两对;3个连续的0则为四条;3个不连续的0则为三带一对;4个1则为...
什么叫小同花顺
小同花顺是指一种扑克牌型组合,具体来说就是五张连续或者花色相同的牌。详细解释如下:一、小同花顺的基本定义 在扑克牌游戏中,同花顺是一种比较特殊的牌型组合。当玩家手中的五张牌都是同一花色时,就可以称之为同花顺。而“小同花顺”则是指这些牌的顺序较小,比如从梅花A到梅花五这样...
拿到皇家同花顺的概率
拿到皇家同花顺的概率极低,具体为十万分之二点五六,即0.000256。皇家同花顺是指在扑克牌游戏中,玩家手中的五张牌不仅花色相同,而且是从10到A的连续五张牌。由于一副扑克牌中只有四种花色,每种花色中只有一组连续的十、J、Q、K、A,因此要想拿到皇家同花顺,首先需要手中的五张牌花色相同,...
java如何比较字符串8 9 10 J Q K A的大小,
用对象做扑克牌游戏,那么每张扑克应该是一个对象。比如【红桃K】,它应该有如下属性:显示(K)花色(Heart)数值(13,用于大小比较)内码(x/54,用于洗牌,也可以用于花色比较)等等,可以根据游戏的规则做优化设计。比较字符串,从效率和代码上,都不是好的选择。
同花顺可以抵正常的顺子吗
是最高级别的牌型之一。正常的顺子是指五张牌的点数连续的牌。同花顺包含了正常的顺子的概念,因为同花顺既满足花色相同的条件,也满足点数连续的条件。所以,在扑克牌游戏中,同花顺可以抵正常的顺子。也就是说,如果你手里有一副牌中的同花顺牌型,那么它也可以被当作正常的顺子来使用。
JAVA编程判断扑克牌大小
import java.util.*;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);List<String> list = new ArrayList<String>();while (scanner.hasNextLine()) {String string = scanner.nextLine();list.add(string);if (list.size() == 5) {...
我手机JAVA里有一个同花顺,我不用这个程序,怎么删除它,
把手机通过数据线连接电脑、找到内存卡所在的盘。打开、依次点工具-文件夹选项-查看-显示隐藏文件-显示所有-确定。让后查看内存卡所在的盘,隐藏文件已经可以看到了,找到同花顺的相关程序全部删除就OK了!
C语言模拟掼蛋中一方最多炸弹数的数学期望
特别地,当某一个点数的牌张数为8张时,需要拆成两个炸弹使用,即炸弹数+1 ;当王的个数为4时,炸弹数+1. 同花顺:需要按顺序检索从A开头到10开头的同花顺。当检索A开头的同花顺时,首先指定一种花色,搜索同花顺的第1张牌,若找到,将这张牌与【非整理好的同花顺】的牌的最后一张交换位置...