308 votes

Produire un nombre aléatoire dans une plage en utilisant C#

Comment faire pour produire des nombres aléatoires dans une fourchette ?

4voto

Voici la version mise à jour de Réponse de Darrelk . Il est mis en œuvre en utilisant Méthodes d'extension C# . Il ne ne pas allouer de mémoire ( nouveau Random() ) à chaque fois que cette méthode est appelée.

public static class RandomExtensionMethods
{
    public static double NextDoubleRange(this System.Random random, double minNumber, double maxNumber)
    {
        return random.NextDouble() * (maxNumber - minNumber) + minNumber;
    }
}

Utilisation (assurez-vous d'importer l'espace de nom qui contient la classe RandomExtensionMethods) :

var random = new System.Random();
double rx = random.NextDoubleRange(0.0, 1.0);
double ry = random.NextDoubleRange(0.0f, 1.0f);
double vx = random.NextDoubleRange(-0.005f, 0.005f);
double vy = random.NextDoubleRange(-0.005f, 0.005f);

3voto

Ohad Schneider Points 10485

En dehors de la Classe aléatoire qui génère des nombres entiers et doubles, considérer :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X