博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洗纸牌算法
阅读量:6157 次
发布时间:2019-06-21

本文共 1690 字,大约阅读时间需要 5 分钟。

import java.util.Random;class Card{   int Suit;							//颜色    char Number;							//卡的数量 }public class PokeShow {	static Card[] OneCard=new Card[52];		    	//保存每张扑克的花色、数字		static void ShowCard() 							//显示扑克牌 	{	   int i, j;	   int sign=0;	   String s="";	   for (i = 0, j = 0; i < 52; i++, j++)	   {		  if (j % 13==0)		  {			 System.out.print("\n");		  }		  switch(OneCard[i].Suit)					//显示花色符号		  {		  case 1:			  s="黑桃";			  sign=3;			  break;		  case 2:			  s="红桃";			  sign=4;			  break;		  case 3:			  s="梅花";			  sign=5;			  break;		  case 4:			  s="方块";			  sign=6;			  break;		  default:			  ;		  }		  System.out.printf("  "+s+OneCard[i].Number);	//输出显示	   }	   System.out.print("\n");	}		static void Shuffle()								//算法	{		int i,j,temp;		int suit;			    Card tempcard=new Card();		suit=0;	   for (i = 0; i < 52; i++)						//生成52张牌 	   {		  if (i % 13 == 0)		  {			 suit++;							//改变花色 		  }		  Card t=new Card();		  t.Suit = suit;					//保存花色 		  temp = i % 13;		  switch(temp)							//特殊值处理		  {		  case 0:			  t.Number = 'A';			  break;		  case 9:			  t.Number = '0';			  break;		  case 10:			  t.Number = 'J';			  break;		  case 11:			  t.Number = 'Q';			  break;		  case 12:			  t.Number = 'K';			  break;		  default:			  t.Number =(char)(temp + '1');		  }		  OneCard[i]=t;	   }	   System.out.printf("一付新牌的初始排列例如以下:\n"); 	   ShowCard();	   Random r=new Random();					//随机种子	   for (i = 0; i < 52; i++)	   {		  j = r.nextInt(52);						//随机换牌		  tempcard = OneCard[j];		  OneCard[j] = OneCard[i];		  OneCard[i] = tempcard;	   }	}	public static void main(String[] args) {								 Shuffle();								//拖曳		 System.out.print("\n洗牌的安排,比如下面的后:\n");		 ShowCard();							//显示新的授权协议	}}

转载地址:http://bsifa.baihongyu.com/

你可能感兴趣的文章
Lync server 2013 监控角色的安装
查看>>
MySQL-MMM如何调用远程管理卡命令去fence?
查看>>
App-V5.0服务器部署
查看>>
使用RAC和Data Guard构建MAA架构
查看>>
存储安全与数据恢复基础手册-服务器篇
查看>>
[IE技巧] 让IE 以全屏模式启动
查看>>
【VMware虚拟化解决方案】双网隔离虚拟化桌面解决方案
查看>>
从瀑布模型、极限编程到敏捷开发
查看>>
EF4.1中诡异的GUID为空问题
查看>>
用开源NAC阻止非法网络访问
查看>>
svn 建子项目的方法
查看>>
ext3文件系统反删除利器ext3grep应用实战
查看>>
大数据量生成工具源代码(Delphi)
查看>>
Redis 数据结构与内存管理策略(上)
查看>>
CSDN2008最有价值博客获奖感言--放飞梦想,让我们扬帆远航
查看>>
调试技巧--Windows端口号是否被占用
查看>>
iOS中的长文本高度计算
查看>>
爪哇国新游记之十----异常初相识
查看>>
Windows 8常用快捷键
查看>>
Oracle EBS R12.1.1 应用克隆 - 2
查看>>