Comunidad de diseño web y desarrollo en internet online

URGENTE

Citar            
MensajeEscrito el 21 Sep 2013 10:39 am
Hola, mi intencion es hacer un programa que seleccione un numero aleatorio, con la funcion rand, pero que este numero tenga una cierta probabilidad de salir.
He encontrado este codigo:

for(n=0; n<100; n++){
a= Math.random();
num = a>.1 ? 1 : a<.05 ? 2 : 3;
trace(num)
}

Pero no lo entiendo =S, ¿me podriais ayudar?

Por Lorena^^

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Sep 2013 07:34 am
Math.random(), te saca un numero de 17 dígitos entre 0 y 1 (0.177~). Tienes que convertir a un rango, de posibilidades que quieres generar.

Pero lo que no entiendo, es para que no quieres controlar las probabilidades. En ese momento que generas el numero, estas a 10^17 a dos, eso quiere decir, que tienes mas probabilidades que te caiga un rayos y te ganes la lotería. La del rayo es de solo 5 millones a uno, y la lotería es de 8 millones a uno.

Lo mas aconsejable es determinar el rango que quieres que salga, para así controlar un poco las probabilidades. Ejemplo 6 a 2, o 12 a 2. Asi si puede hacer mas, por que si sigues así te mueres de hambre, pa que caiga.

Como controlarlo??

Simple, lo multiplicas por el numero máximo y le sacas un parceInit (Te saca un entero).

var x = parceInit( Math.random() * NumeroMaximo )

Y sera un numero entre 0 a el numero máximo que escojas.

Por alejonext

Claber

235 de clabLevel

2 tutoriales

Genero:Masculino  

artista

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.