软件注册站
热情软件屋

 
怎样能把一副牌(52张)的顺序打乱
编号: QA004752    
建立日期: 2003年11月8日 最后修改日期: 2003年11月30日
所属类别: C/C++ - 其他方面
   
    操作系统: windows
    编程工具: vc6.0
    问题: 我想编一个扑克牌游戏,怎样能把一副牌(52张)的顺序打乱?
    水平: 中级(joatw)
   
    我个人觉的可以采用先对这52张牌进行排序然后,采用随机函数发生器产生随机数来对它进行抽取。
    至于随机函数的发生器,就由你自己决定。产生的水平高低,就看你自己了。
    我个人建议采用一种方法。我推荐你去随便找一本密码学的书,就有关于随机函数的发生器。可以产生较为高质量的自然的随机数了。
    
    韩风的意见:
    事先生成确实是个不错的办法,不过需要很大空间,其实也可以随机生成,建一个数组,保存1~52,每次生成一个随机数,求余取出后,减一,数组清零,继续!
    
    色豆的意见:
    循环52次,利用第N张与所产生的F(N)随机函数的结果M张,交换,即可。
    
    相关问题:
    QA000414 "在Visual C++中怎样获取随机数"
    QA000544 "如何得到扑克牌的牌面图案"
    
    相关书籍:
    《密码编码学——加密方法的C与C++实现(第二版)》》

    

此问题由尚有强回答。

附加关键字:编程, 源程序, programming, source code, C/C++, MFC, C++ Builder, Borland C++, Turbo C, C, BCB, 其他方面,

   
 
把这个问题推荐给朋友
   
 
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio