Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
4
respuestas

Solucion de Error de docente de numero aleatorio del 1 al 10

<meta charset="UTF-8">
<script>
    //El docente en todos sus ejemplos a usado esta forma de realizar numeros aleatorios del 1 al 10
    for( var i = 0; i < 10; i++) {
        document.write(Math.round(Math.random()*10));
        document.write("<br>");
    }
    //Pero lo cierto es que ese codigo da numeros de 0 al 10, porque teoricamente Math.round devuelve numeros enteros igual o elevado y ramdom devuelve numeros enteros 0.4566645.. etc
</script>
<meta charset="UTF-8">
<script>
    //Lo ideal es usar Math.floor que devuelve numeros enteros pero no elevados, devolviendo 0 al 9  y al sumarle a Math.random()*10 + 1, aumenta 1 an inicio y final dando los numeros del  1 al 10.
    for( var i = 0; i < 10; i++) {
        document.write(Math.floor(Math.random()*10+1));
        document.write("<br>");
    }
</script>
4 respuestas

Genial! gracias por este consejo

Gracias por el dato, pero al decir numero enteros elevados, a que te refieres?

Creo que con un ejemplo seria mejor: Numero decimal:

0.4567..

Numero Elevado(round):

0.5 Numero No Elevado(floor): 0.4

Estos al multiplicarse por 10 = Daria 5 ó 4 como numeros enteros elevados o no elevados.

Y si te preguntas de donde saco el a 0 a 10, es porque Si en caso el numero aleatorio sale 0.04861..(es un ejemplo): Si lo multiplicas por 10: Sigue quedando 0.486 y si lo vuelves a entero quedaria 0, es por eso que la formula del profesor siempre bota 0 al 10

Ya, numero elevado es un aproximado cercano.