질문:
연속해서 중복되는 번호가 없는지 확인하면서 6개의 고유한 복권 번호를 생성하는 프로그램을 작성하는 방법은 무엇입니까?
초기 코드 조각:
<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() 메서드를 사용하여 이를 섞은 다음 섞인 시퀀스에서 처음 6개의 숫자를 선택합니다.
<code class="language-csharp">var rnd = new Random(); var randomNumbers = Enumerable.Range(1, 49).OrderBy(x => rnd.Next()).Take(6).ToList();</code>
위 내용은 C#에서 6개의 고유한 무작위 복권 번호를 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!