码迷,mamicode.com
首页 > 其他好文 > 详细

洗牌游戏

时间:2014-07-26 14:52:30      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   使用   os   2014   for   

实现洗牌游戏的一种算法是:遍历每个位置上的牌,然后与随机位置上的牌交换。

bubuko.com,布布扣

 

对于牌来讲,2个关键的因素是面值和类型(红桃、梅花等)。

    public class Card
    {
        private string mianzhi;
        private string leixin;
        public Card(string m, string l)
        {
            mianzhi = m;
            leixin = l;
        }
        public override string ToString()
        {
            return leixin + " " + mianzhi;
        }
    }

 

客户端程序有3个方法,一个是初始化牌的数组,一个是遍历所有牌并显示,还有一个是使用算法洗牌。

    class Program
    {
        private static Card[] allCards = new Card[52];
        private static string[] ms = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" };
        private  static string[] ls = { "红桃", "方块", "梅花", "黑桃" };
        static void Main(string[] args)
        {
            Init();
            ShowAllCards();
            Console.WriteLine("\r\n");
            Shuffle();
            ShowAllCards();
            Console.ReadKey();
        }
        private static void Shuffle()
        {
            Random r = new Random();
            Card tempCard;
            //依次遍历所有牌与随机位置上的牌交换位置
            for (int i = 0; i < allCards.Length; i++)
            {
                int ran = r.Next(52);
                tempCard = allCards[i];
                allCards[i] = allCards[ran];
                allCards[ran] = tempCard;
            }
        }
        private static void Init()
        {
            for (int i = 0; i < allCards.Length; i++)
            {
                allCards[i] = new Card(ms[i % 13],ls[i%4]);
            }
        }
        private static void ShowAllCards()
        {
            foreach (var item in allCards)
            {
                Console.Write(item.ToString() + " ");
            }
        }
    }

洗牌游戏,布布扣,bubuko.com

洗牌游戏

标签:style   blog   http   color   使用   os   2014   for   

原文地址:http://www.cnblogs.com/darrenji/p/3869983.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!