Maison > développement back-end > C++ > Comment générer six numéros de loterie aléatoires uniques en C# ?

Comment générer six numéros de loterie aléatoires uniques en C# ?

Mary-Kate Olsen
Libérer: 2025-01-12 13:41:42
original
518 Les gens l'ont consulté

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

Programme de loterie C# : générer des nombres aléatoires uniques

Question :

Comment écrire un programme pour générer six numéros de loterie uniques, en garantissant qu'il n'y a pas de numéros en double dans une rangée ?

Extrait de code initial :

// 使用随机数对象生成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();
Copier après la connexion

Question :

L'extrait de code initial peut générer des nombres aléatoires, mais il peut y avoir des nombres en double dans la même ligne.

Solution :

Afin de générer des nombres aléatoires uniques, nous devons stocker les nombres générés dans une collection et vérifier si chaque nouveau nombre aléatoire existe déjà. Si des doublons sont trouvés, un nouveau nombre aléatoire est généré jusqu'à ce qu'un numéro unique soit trouvé.

Alternativement, nous pouvons utiliser une approche plus efficace : générer une séquence de nombres entre 1 et 49, la mélanger à l'aide des méthodes OrderBy et rnd.Next(), puis sélectionner les six premiers nombres dans la séquence mélangée.

var rnd = new Random();
var randomNumbers = Enumerable.Range(1, 49).OrderBy(x => rnd.Next()).Take(6).ToList();
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal