首页 > 后端开发 > C++ > 如何在 C# 中生成六个唯一的随机彩票号码?

如何在 C# 中生成六个唯一的随机彩票号码?

Mary-Kate Olsen
发布: 2025-01-12 13:41:42
原创
494 人浏览过

How to Generate Six Unique Random Lottery Numbers in C#?

C#彩票程序:生成不重复的随机号码

问题:

如何编写一个程序,生成六个唯一的彩票号码,确保一行中没有重复的号码?

初始代码片段:

<code class="language-csharp">// 使用随机数对象生成6个随机数

int randomNumber1 = random.Next(1, 49);
int randomNumber2 = random.Next(1, 49);
int randomNumber3 = random.Next(1, 49);
int randomNumber4 = random.Next(1, 49);
int randomNumber5 = random.Next(1, 49);
int randomNumber6 = random.Next(1, 49);

textBox1.Text = randomNumber1.ToString();
textBox2.Text = randomNumber2.ToString();
textBox3.Text = randomNumber3.ToString();
textBox4.Text = randomNumber4.ToString();
textBox5.Text = randomNumber5.ToString();
textBox6.Text = randomNumber6.ToString();</code>
登录后复制

问题:

初始代码片段可以生成随机数,但同一行中可能会出现重复的数字。

解决方案:

为了生成唯一的随机数,我们需要将生成的数字存储在一个集合中,并检查每个新的随机数是否已存在。如果发现重复,则生成一个新的随机数,直到找到一个唯一的数字为止。

或者,我们可以使用一种更高效的方法:生成一个1到49之间的数字序列,使用OrderBy和rnd.Next()方法对其进行洗牌,然后从洗牌后的序列中选择前六个数字。

<code class="language-csharp">var rnd = new Random();
var randomNumbers = Enumerable.Range(1, 49).OrderBy(x => rnd.Next()).Take(6).ToList();</code>
登录后复制

以上是如何在 C# 中生成六个唯一的随机彩票号码?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板