Java -洗牌、发牌、随机地主

package text03;

public class text1{

public static void main(String[] args) {

//练习一、
//请定义一副扑克牌,输出扑克牌里的所有的值,(例如红心J)
int k,j;
String[] puke=new String[60];
String[] dizhup=new String[20];
String[] huase={"方块","梅花","红心","黑桃"};
String[] shuzi={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
for( k=0;k<shuzi.length;k++){
for(j=0;j<huase.length;j++){
System.out.print(huase[j]+shuzi[k]+"  ");
}
System.out.println("");
}
System.out.print("大王"+"      "+"小王");
System.out.println("");
      /*课后练习:如果(int)Math.random()*10 表示的是一个随机的整数,
       * */
//(*10 是因为,Math.random() 随机出来的0-1之间的小数。)
//那么请你,基于以上练习,先把牌洗一下,再进行发牌 ,然后再随机地主吧。
//要求步骤:
//1、洗牌方法
//2、发牌方法
//3、(可选)随机地主方法
//4、(可选)显示3张底牌方法
//5、(可选)找出地主手中最小的牌
text1 a=new text1();
puke=a.kkk(huase, shuzi);
dizhup=a.kkk2(puke);
a.kkk3(puke);
a.kkk5(dizhup);


}
public String[] kkk(String huase[],String shuzi[]){
int i,j;
int hs,sz,sum=0;
String temp;
String[] puke;
puke=new String[54];
//给扑克牌赋值
for(i=0;i<=3;i++){
for(j=0;j<=12;j++){
puke[sum]=huase[i]+shuzi[j];
sum++;
if(sum>=53){
break;
}
}
if(sum>=53){
break;
}
}
puke[52]="大王";
puke[53]="小王";
//洗牌
for(i=0;i<=10000;i++){
hs=(int)(Math.random()*53);
sz=(int)(Math.random()*53);
temp=puke[hs];
puke[hs]=puke[sz];
puke[sz]=temp;
}
return puke;
}

public String[] kkk2(String puke[]){
String[] A=new String[20];
String[] B=new String[20];
String[] C=new String[20];
int i;
for(i=0;i<=16;i++){
A[i]=puke[i];
B[i]=puke[3*i+1];
C[i]=puke[3*i+2];
}
System.out.print("A的牌           ");
for(i=0;i<=16;i++){
System.out.print(A[i]+"   ");
}
System.out.println("   ");
System.out.print("B的牌          ");
for(i=0;i<=16;i++){
System.out.print(B[i]+"   ");
}
System.out.println("   ");
System.out.print("C的牌           ");
for(i=0;i<=16;i++){
System.out.print(C[i]+"   ");
}
System.out.println("");
//随机地主
String[] dizhup=new String[20];
int dizhu=(int)(Math.random()*10000);
if(dizhu>6666){
System.out.println("A是地主");
A[17]=puke[51];
A[18]=puke[52];
A[19]=puke[53];
for(i=0;i<=19;i++){
dizhup[i]=A[i];
}
}
else if(dizhu>3333){
System.out.println("B是地主");
B[17]=puke[51];
B[18]=puke[52];
B[19]=puke[53];
for(i=0;i<=19;i++){
dizhup[i]=B[i];
}
}
else{
System.out.println("C是地主");
C[17]=puke[51];
C[18]=puke[52];
C[19]=puke[53];
for(i=0;i<=19;i++){
dizhup[i]=C[i];
}
}
return dizhup;
}
//显示底牌
public void kkk3(String puke[]){
int i;
System.out.println("底牌是:");
for(i=51;i<=53;i++){
System.out.print(puke[i]+"   ");
}
System.out.println("");
}
//地主手中最小的牌
public void kkk5(String dizhup[]){
int i;
int[] num1=new int[20];
System.out.println("地主手中最小的牌是:");
for(i=0;i<=19;i++){
switch(dizhup[i]){
case "方块3":
num1[i]=0;
break;
case "梅花3":
num1[i]=1;
break;
case "红心3":
num1[i]=2;
break;
case "黑桃3":
num1[i]=3;
break;
case "方块4":
num1[i]=4;
break;
case "梅花4":
num1[i]=5;
break;
case "红心4":
num1[i]=6;
break;
case "黑桃4":
num1[i]=7;
break;
case "方块5":
num1[i]=8;
break;
case "梅花5":
num1[i]=9;
break;
case "红心5":
num1[i]=10;
break;
case "黑桃5":
num1[i]=11;
break;
case "方块6":
num1[i]=12;
break;
case "梅花6":
num1[i]=13;
break;
case "红心6":
num1[i]=14;
break;
case "黑桃6":
num1[i]=15;
break;
case "方块7":
num1[i]=16;
break;
case "梅花7":
num1[i]=17;
break;
case "红心7":
num1[i]=18;
break;
case "黑桃7":
num1[i]=19;
break;
case "方块8":
num1[i]=20;
break;
case "梅花8":
num1[i]=21;
break;
case "红心8":
num1[i]=22;
break;
case "黑桃8":
num1[i]=23;
break;
case "方块9":
num1[i]=24;
break;
case "梅花9":
num1[i]=25;
break;
case "红心9":
num1[i]=26;
break;
case "黑桃9":
num1[i]=27;
break;
case "方块10":
num1[i]=28;
break;
case "梅花10":
num1[i]=29;
break;
case "红心10":
num1[i]=30;
break;
case "黑桃10":
num1[i]=31;
break;
case "方块J":
num1[i]=32;
break;
case "梅花J":
num1[i]=33;
break;
case "红心J":
num1[i]=34;
break;
case "黑桃J":
num1[i]=35;
break;
case "方块Q":
num1[i]=36;
break;
case "梅花Q":
num1[i]=37;
break;
case "红心Q":
num1[i]=38;
break;
case "黑桃Q":
num1[i]=39;
break;
case "方块K":
num1[i]=40;
break;
case "梅花K":
num1[i]=41;
break;
case "红心K":
num1[i]=42;
break;
case "黑桃K":
num1[i]=43;
break;
case "方块A":
num1[i]=44;
break;
case "梅花A":
num1[i]=45;
break;
case "红心A":
num1[i]=46;
break;
case "黑桃A":
num1[i]=47;
break;
case "方块2":
num1[i]=48;
break;
case "梅花2":
num1[i]=49;
break;
case "红心2":
num1[i]=50;
break;
case "黑桃2":
num1[i]=51;
break;
case "小王":
num1[i]=52;
break;
case "大王":
num1[i]=53;
break;
}
}
int min;
min=num1[0];
for(i=0;i<=18;i++){
if(num1[i+1]<=min){
min=num1[i+1];
}
}
String[] mmin=new String[2];
System.out.println("");
switch(min){
case 0:
mmin[1]="方块3";
break;
case 1:
mmin[1]="梅花3";
break;
case 2:
mmin[1]="红心3";
break;
case 3:
mmin[1]="黑桃3";
break;
case 4:
mmin[1]="方块4";
break;
case 5:
mmin[1]="梅花4";
break;
case 6:
mmin[1]="红心4";
break;
case 7:
mmin[1]="黑桃4";
break;
case 8:
mmin[1]="方块5";
break;
case 9:
mmin[1]="梅花5";
break;
case 10:
mmin[1]="红心5";
break;
case 11:
mmin[1]="黑桃5";
break;
case 12:
mmin[1]="方块6";
break;
case 13:
mmin[1]="梅花6";
break;
case 14:
mmin[1]="红心6";
break;
case 15:
mmin[1]="黑桃6";
break;
case 16:
mmin[1]="方块7";
break;
case 17:
mmin[1]="梅花7";
break;
case 18:
mmin[1]="红心7";
break;
case 19:
mmin[1]="黑桃7";
break;
case 20:
mmin[1]="方块8";
break;
case 21:
mmin[1]="梅花8";
break;
case 22:
mmin[1]="红心8";
break;
case 23:
mmin[1]="黑桃8";
break;
case 24:
mmin[1]="方块9";
break;
case 25:
mmin[1]="梅花9";
break;
case 26:
mmin[1]="红心9";
break;
case 27:
mmin[1]="黑桃9";
break;
case 28:
mmin[1]="方块10";
break;
case 29:
mmin[1]="梅花10";
break;
case 30:
mmin[1]="红心10";
break;
case 31:
mmin[1]="黑桃10";
break;
case 32:
mmin[1]="方块";
break;
case 33:
mmin[1]="梅花J";
break;
case 34:
mmin[1]="红心J";
break;
case 35:
mmin[1]="黑桃J";
break;
case 36:
mmin[1]="方块Q";
break;
case 37:
mmin[1]="梅花Q";
break;
case 38:
mmin[1]="红心Q";
break;
case 39:
mmin[1]="黑桃Q";
break;
case 40:
mmin[1]="方块K";
break;
case 41:
mmin[1]="梅花K";
break;
case 42:
mmin[1]="红心K";
break;
case 43:
mmin[1]="黑桃K";
break;
case 44:
mmin[1]="方块A";
break;
case 45:
mmin[1]="梅花A";
break;
case 46:
mmin[1]="红心A";
break;
case 47:
mmin[1]="黑桃A";
break;
case 48:
mmin[1]="方块2";
break;
case 49:
mmin[1]="梅花2";
break;
case 50:
mmin[1]="红心2";
break;
case 51:
mmin[1]="黑桃2";
break;
case 52:
mmin[1]="小王";
break;
case 53:
mmin[1]="大王";
break;
}
System.out.print(mmin[1]);
}
}

猜你喜欢

转载自riocastop.iteye.com/blog/2312300
今日推荐