Un número aleatorio entre min y max
importancia: 2
La función incorporada Math.random()
crea un valor aleatorio entre 0
y 1
(no incluyendo 1
).
Escribe una función random(min, max)
para generar un número de punto flotante entre min
y max
(no incluyendo max
).
Ejemplos de su funcionamiento:
alert( random(1, 5) ); // 1.2345623452
alert( random(1, 5) ); // 3.7894332423
alert( random(1, 5) ); // 4.3435234525
Necesitamos hacer un “mapeo” de todos los valores del intervalo 0…1 a valores desde min
a max
.
Esto puede hacerse en dos pasos:
- Si multiplicamos el número aleatorio 0…1 por
max-min
, entonces el intervalo de valores posibles va de0..1
a0..max-min
. - Ahora si sumamos
min
, el intervalo posible se vuelve desdemin
amax
.
La función:
function random(min, max) {
return min + Math.random() * (max - min);
}
alert( random(1, 5) );
alert( random(1, 5) );
alert( random(1, 5) );