Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Duda sobre Math.random

Buenas tardes, estoy viendo la clase Lógica de programación: sumérgete en la programación con JavaScript, específicamente en el video de "08 Math.random() en nuestro código".

En la clase comentan que usan "Math.Floor(Math.random()*10) + 1;

Para dar contexto a mi duda:

Entiendo que Math.floor se anida para convertir el numero aleatorio en un numero entero, y se agrega el "*10" para decir que es entre 0 y 10, pero como tiene que ser entre 1 y 10 se agrega el "+1" para en caso de que cuando el numero que arroje el "Math.random" sea "0" este pase a ser "1"

Mi duda es: ¿Entonces en caso de que el numero arrojado por el math.random sea 10 ese "+1" no lo convertiría en "11"?

1 respuesta

¡Hola Diego!

Entiendo tu duda sobre el uso de Math.random() en JavaScript. La expresión Math.floor(Math.random()*10) + 1 se utiliza para generar un número aleatorio entre 1 y 10. Al multiplicar por 10, obtenemos un número entre 0 y 9, y al sumar 1 al resultado final, nos aseguramos de que el número esté en el rango deseado, es decir, entre 1 y 10.

En cuanto a tu pregunta sobre si el +1 convertiría un 10 en un 11, la respuesta es no. El Math.random() genera un número decimal entre 0 (inclusive) y 1 (exclusivo), por lo que al multiplicarlo por 10 y luego sumarle 1, el resultado nunca será 11. El número más alto que se puede obtener es 10.9999, pero al aplicar Math.floor, se redondeará hacia abajo a 10.

Espero que esta explicación aclare tu duda. ¡Sigue adelante con tu aprendizaje en programación con JavaScript!

Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!