温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#中怎么实现一个随机数发生器

发布时间:2021-07-08 14:00:51 来源:亿速云 阅读:91 作者:Leah 栏目:编程语言

C#中怎么实现一个随机数发生器,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

***种方法不指定随机种子,系统自动选取当前时间作为随机种子:

Random ro = new Random();

第二种方法可以指定一个int型参数作为随机种子:

int iSeed=10;  Random ro = new Random(10);  long tick = DateTime.Now.Ticks;  Random ran = new Random((int)(tick & 0xffffffffL) | (int) (tick >> 32));

用它来检测生成的随机数是否有重复,如果取出来的数字和已取得的数字有重复就重新随机获取。

Random ra=new Random(unchecked((int)DateTime.Now.Ticks));  int[] arrNum=new int[10];  int tmp=0;  int minValue=1;  int maxValue=10;  for (int i=0;i<10;i++)  {  tmp=ra.Next(minValue,maxValue); //随机取数  arrNum=getNum(arrNum,tmp,minValue,maxValue,ra); //取出值赋到数组中  }  .........  .........  public int getNum(int[] arrNum,int tmp,int minValue,int maxValue,Random ra)  {  int n=0;  while (n<=arrNum.Length-1)  {  if (arrNum[n]==tmp) //利用循环判断是否有重复  {  tmp=ra.Next(minValue,maxValue); //重新随机获取。  getNum(arrNum,tmp,minValue,maxValue,ra);//递归:如果取出来的数字和已取得的数字有重复就重新随机获取。  }  n++;  }  return tmp;  }

关于C#中怎么实现一个随机数发生器问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI