weno necesito saber como puedo acer que de cierta probabilidad salga un evento, por ejemplo yo uso esta funcion
switch (choose(1,2,3))
{
case 1:
case 2:
case 3:
}
pero esta solo me da un maximo de 16 y yo lo necesito en miles :(
switch (floor(random(10000))){
...
}
Hola,
Si quieres que n numeros aleatorios tengan la misma probabilidad, puedes usar algo como esto:
{
var u,i;
u=random(1);
for(i=1;i<=n;i+=1)
{
if(u<(i/n))
{
<expresiones>
...
break;
}
}
}
Si quieres que n numeros aleatorios tengan distintas probabilidades, defines un array f de tama?o n (es decir, con indices de 0 a n-1) de valores entre 0 y 1 que suman 1, y usas algo como esto:
{
var u,F,i;
u=random(1);
F=0;
for(i=0;i<n;i+=1)
{
F+=f[i];
if(u<F)
{
<expresiones>
...
break;
}
}
}
Saludos!!!
muchas gracias ustedes siempre me salvan ;)
if round(random(100))=1 {}
round()=redondear
random(aleatorio en decimales)
//redondea un numero aletorio en desimales a un numero entero.