zoukankan      html  css  js  c++  java
  • 程序设计_洗牌程序

    问题

    洗牌程序。52张牌(不算大小王),一个人随机地洗牌,每次结果都不同。

    分析

    随机数的使用。计算机不可能产生完全随机的数字。所谓随机数发生器都是通过一定的算法对事先选定的随机种子做复杂的运算,用产生的结果来近似地模拟完全随机数,这种随机数被称为伪随机数。伪随机数是以相同的概率从一组有限的数字中选取的。所选数字并不具有完全的随机性,但从实用的角度而言,已经足够了。伪随机数的选择是从随机种子开始,所以为了保证每次得到的伪随机数都足够地“随机”,随机种子的选择很重要。如果随机种子一样,那么同一个随机数发生器产生的随机数也会一样。一般地,我们使用系统时间有关的参数作为随机种子,这也是.NET Framework中的随机数发生器默认采用的方法。

    C#方案

    using System;
    class Program
    {
        static void Main(string[] args)
        {
            string[] porks = new string[] { "A-S", "A-C", "A-H", "A-D",   
                "2-S", "2-C", "2-H", "2-D",
                "3-S", "3-C", "3-H", "3-D", 
                "4-S", "4-C", "4-H", "4-D",  
                "5-S", "5-C", "5-H", "5-D",
                "6-S", "6-C", "6-H", "6-D",
                "7-S", "7-C", "7-H", "7-D",
                "8-S", "8-C", "8-H", "8-D",
               "9-S", "9-C", "9-H", "9-D",
                "10-S", "10-C", "10-H", "10-D",
                "J-S", "J-C", "J-H", "J-D",
                "Q-S", "Q-C", "Q-H", "Q-D",                              
                "K-S", "K-C", "K-H", "K-D",};
            string tmp;
            int i, randtmp;
            Random r1 = new Random();
            for (i = 0; i < 52; i++)
            {
                // 随机生成数组下标            
                randtmp = (int)(52 * r1.NextDouble());
                tmp = porks[i];
                porks[i] = porks[randtmp];
                porks[randtmp] = tmp;
            }
            for (i = 0; i < 52; i++)
            {
                Console.WriteLine("  {0}", porks[i]);
            }
            Console.WriteLine("Note: S-spade C-club H-heart D-diamond");
            Console.ReadKey();
        }
    }
  • 相关阅读:
    番茄土豆:小小生产力工具
    ubuntu下thrift的安装
    番茄工作法:试试看?
    python利用thrift连接hive
    如何预测用户query意图 « 搜索技术博客-淘宝
    笔记:Ubuntu下快速开始使用Python Thrift | 孙立文的博客
    hive使用
    checkout centos is x86_64 or 32bit
    溢泰的休閒世界 溢泰的 CentOS 5.x 系統與內建軟體安裝筆記整理
    番茄工作法_Feisky_新浪博客
  • 原文地址:https://www.cnblogs.com/liuning8023/p/2166687.html
Copyright © 2011-2022 走看看