visual una semilla repetir propiedad numeros matriz llenar generar ejemplos decimales con clase aleatorios c# random

c# - una - Número aleatorio: 0 o 1



propiedad random c# (6)

¿Estoy mirando demasiado lejos para ver algo tan simple como elegir un número: 0 o 1?

Random rand = new Random(); if (rand.NextDouble() == 0) { lnkEvents.CssClass = "selected"; } else { lnkNews.CssClass = "selected"; }


Parece que lo que quieres hacer (elegir entre dos valores) se expresa más claramente usando el método Next , en lugar del método NextDouble .

const int ExclusiveUpperBound = 2; if (new Random().Next(ExclusiveUpperBound) == 0)

El valor producido es "mayor o igual a cero, y menor que" ExclusiveUpperBound .


Si no está en un bucle estrecho, podría usar

(DateTime.Now.Millisecond % 2) - double DateTime.Now.Millisecond % (double) 10) / 10


Si quieres 50/50 de probabilidad, te sugiero:

Random rand = new Random(); if (rand.NextDouble() >= 0.5) lnkEvents.CssClass = "selected"; else lnkNews.CssClass = "selected";


Un enfoque muy simple podría ser:

Random random = new Random(); bool result = random.Next(0, 2) != 0;

Luego usa el resultado para tu lógica.


Random.NextDouble() seleccionará cualquier número doble de 0 pero menos de 1.0. La mayoría de estos números no son cero, por lo que su distribución no será tan uniforme como espera.


Random rand = new Random(); if (rand.Next(0, 2) == 0) lnkEvents.CssClass = "selected"; else lnkNews.CssClass = "selected";

Random.Next selecciona un entero aleatorio entre el límite inferior (incluido) y el límite superior (exclusivo).