`
除却巫山不是云
  • 浏览: 14504 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类

三个人斗地主随机洗牌发牌,随机地主

 
阅读更多
package test1;

public class puke {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		puke n1=new puke();
		n1.xipai();
	}
//洗牌发牌程序
public void xipai(){
		int xipai;
		String temp;
		String [] all=new String[54];
		String [] huase={"红心","方块","黑桃","梅花"};
		String [] puke={"A","2","3","4","5","6","7","8","9","10","J","Q","K","大王","小王"};
		int k=0;
		for(int i=0;i<huase.length;i++){
			for(int j=0;j<puke.length-2;j++){
				
				all[k]=huase[i]+puke[j];
				k++;
				}
			}
		all[52]="小王";
		all[53]="大王";
		for(int i=0;i<54;i++){
			xipai=(int)(Math.random()*54);
			temp=all[i];
			all[i]=all[xipai];
			all[xipai]=temp;
		}
		
	String [] nongmin2=new String[17];
	String [] nongmin3=new String[17];
	String [] nongmin1=new String[17];
	//农民1的牌
	int l=0;
	for(int j=0;j<51;){
		 nongmin1[l]=all[j];
		 j=j+3;
		 l++;
		}
	System.out.println("玩家一的牌为:");
	for(int i=0;i<17;i++)
	System.out.print(nongmin1[i]+" ");
	System.out.println();
	//农民2的牌
	int m=0;
	for(int j=1;j<51;){
		 nongmin2[m]=all[j];
		 j=j+3;
		 m++;
		}
	System.out.println("玩家二的牌为:");
	for(int i=0;i<17;i++)
	System.out.print(nongmin2[i]+" ");
	System.out.println();
	//农民3的牌
	int n=0;
	for(int j=2;j<51;){
		nongmin3[n]=all[j];
		j=j+3;
		n++;
		}
	System.out.println("玩家三的牌为:");
	for(int i=0;i<17;i++)
	System.out.print(nongmin3[i]+" ");
	System.out.println();
	System.out.println("底牌为:"+all[51]+" "+all[52]+" "+all[53]);
	int dizhu;
	int z=(int)(Math.random()*10);
	dizhu=z%3;
	switch(dizhu){
		case 0:
			System.out.println("地主为玩家一");
			String [] dizhupai=new String[20];
			int j=0;
			for(int i=0;i<17;i++){
			dizhupai[j]=nongmin1[i];
				j++;
			}
			dizhupai[17]=all[51];
			dizhupai[18]=all[52];
			dizhupai[19]=all[53];
			System.out.println("地主牌为:");
			for(int i=0;i<20;i++){
				System.out.print(dizhupai[i]+" ");
			}
			break;
		case 1:
			System.out.println("地主为玩家二");
			String [] dizhupai1=new String[20];
			int e = 0;
			for(int i=0;i<17;i++){
			dizhupai1[e]=nongmin2[i];
				e++;
			}
			dizhupai1[17]=all[51];
			dizhupai1[18]=all[52];
			dizhupai1[19]=all[53];
			System.out.println("地主牌为:");
			for(int i=0;i<20;i++){
				System.out.print(dizhupai1[i]+" ");
			}
			break;
		case 2:
			System.out.println("地主为玩家三");
			String [] dizhupai11=new String[20];
			int f=0;
			for(int i=0;i<17;i++){
			dizhupai11[f]=nongmin3[i];
				f++;
			}
			dizhupai11[17]=all[51];
			dizhupai11[18]=all[52];
			dizhupai11[19]=all[53];
			System.out.println("地主牌为:");
			for(int i=0;i<20;i++){
				System.out.print(dizhupai11[i]+" ");
			}
			break;
	}
}
}

 

2
0
分享到:
评论
3 楼 除却巫山不是云 2016-07-20  
RioCasTop 写道
你是哪位,东臣的?

对啊。
2 楼 RioCasTop 2016-07-20  
你是哪位,东臣的?
1 楼 除却巫山不是云 2016-07-20  
刚入门java,自己写的小程序。

相关推荐

    斗地主洗牌发牌算法

    在本文中,我们将深入探讨如何实现斗地主游戏中的洗牌和发牌算法。这是一个非常适合初学者学习编程逻辑和算法的实例,特别是对于Java编程语言的学习者。斗地主是一种广受欢迎的扑克游戏,通常由三名玩家进行,每名...

    java斗地主发牌小程序

    在这个小程序中,我们将探讨如何生成牌,随机洗牌,以及公平地发牌给三个玩家。 【描述】:“牌的生成、随机洗牌、发牌、输出显示” 1. **牌的生成**:在Java中,首先我们需要创建一个表示扑克牌的数据结构。这...

    CSharp斗地主随机发牌程序

    在本文中,我们将深入探讨如何使用C#编程语言来实现一个斗地主游戏的随机发牌程序。斗地主是一款非常流行的扑克牌游戏,通常由三位玩家参与,使用一副54张的扑克牌(包括两张王)。理解如何设计并实现这样一个随机发...

    斗地主洗牌发牌java小程序

    一个实现斗地主洗牌发牌的java小程序,主要用了hashmap,Arraylist等java常用类,适合初学者学习

    java模拟斗地主的洗牌发牌.rar

    在Java编程语言中,模拟斗地主游戏的洗牌、发牌和看牌过程是一项有趣的实践,这有助于加深对集合框架的理解。在这个项目中,主要使用了三种集合类:HashMap、ArrayList和TreeSet,它们各自有其独特的特性和用途。 ...

    java模拟斗地主洗牌发牌-可拓展

    1)、将一副牌封装进入Map集合中,键为0-53的Integer数据,值为字符串 2)、洗牌:将Map集合的...3)、发牌:发给三个人,就是三个List加一个底牌的List 4)、看牌:将三人的List和底牌List的值进行排序(从大到小)

    Java斗地主发牌课程设计.doc

    这个课程设计的重点在于实现斗地主发牌的逻辑,包括如何公平、随机地分配牌,以及如何通过面向对象的方式组织游戏中的角色和流程。学生在完成这个项目的过程中,可以学习到Java语言的基本语法、面向对象编程的概念,...

    lua模拟斗地主洗牌发牌排序等过程

    斗地主是一款三个人玩的扑克牌游戏,每局游戏开始前,需要将一副54张的扑克牌进行洗牌,然后平均分给三位玩家,每人17张,剩下3张作为底牌。在此过程中,我们需要实现的是随机洗牌算法。 在Lua中,可以利用math....

    python实现三人斗地主洗牌

    Python写得三人斗地主洗牌程序,

    C# 斗地主发牌代码

    根据斗地主的规则进行洗牌、发牌、排序(BJoker&gt;SJoker&gt;2&gt;A&gt;K&gt;Q&gt;J&gt;10&gt;9&gt;8&gt;7&gt;6&gt;5&gt;4&gt;3)的一些相关代码

    斗地主项目的洗牌和发牌

    实现斗地主游戏的洗牌和发牌功能,新人,但代码是正确的。

    j2me斗地主发牌源码

    《深入解析J2ME斗地主发牌源码》 在移动通信技术发展的早期阶段,J2ME(Java 2 Micro Edition)是广泛应用于手机游戏开发的平台之一。本篇文章将详细探讨“j2me斗地主发牌源码”的核心机制,帮助读者理解其背后的...

    vb 模仿斗地主发牌

    斗地主是一款流行的扑克牌游戏,通常由三位玩家参与,游戏中有54张牌(包括两张王),在发牌时会留出三张底牌。在这个项目中,我们将不考虑花色,只关注数字和牌的类型。 首先,我们需要理解斗地主的牌型。主要包括...

    运用java技术实现斗地主洗牌和发牌模拟

    使用java模拟实现斗地主的洗牌发牌。首先使用java集合中Map集合将斗地主的牌存储起来,键存储编号,值存储牌的名称,如黑桃图形2。利用Collections工具包中的shuffle方法实现斗地主的洗牌功能,将洗好后的用List存储...

    java斗地主发牌程序

    发牌算法则涉及到如何公平、随机地分发牌给三个玩家。这通常通过生成随机数并按顺序分配来实现。 4. **随机数生成**:在发牌过程中,需要用到随机数来确保每次发牌的随机性。Java提供了`java.util.Random`类,可以...

    田莉莉20209956033 斗地主洗发牌.rar

    在这个"田莉莉20209956033 斗地主洗发牌.rar"压缩包中,可能包含的是关于斗地主游戏洗牌和发牌算法的相关资料,这对于理解游戏的公平性和随机性至关重要。 在斗地主游戏中,洗牌是确保每一轮游戏开始时牌序随机的...

    斗地主三人随机发牌.rar

    lodash的_.shuffle()方法可以用于洗牌操作,确保发牌的随机性。我们先将牌堆数组进行洗牌,然后依次为每个玩家分配一定数量的牌,确保每一轮游戏开始时,牌的分布都是未知的。 为了实现这个功能,我们需要编写...

    易语言模仿斗地主发牌

    在发牌前,先对所有牌进行洗牌操作,这可以通过多次交换牌的位置来实现。易语言提供了随机数生成函数,可以配合数组索引来实现牌的随机排列。 接下来是判断牌值的部分,斗地主中牌的大小规则较为复杂,包括单张、...

Global site tag (gtag.js) - Google Analytics