1
respuesta

Desafío: juego de adivinanza

En este código cree una función llamada lotería el cual recibe como parámetro una variable con el identificador n, el cual será el tope del rango de donde queremos obtener nuestro numero aleatorio. 0 a n

function loteria(n){
        return Math.round(Math.random()*n);
 }

El valor de n es digitado por el usuario y enviado como parametro a la función loteria

var numeroPensado = loteria(n);
 var numeroLanzado = parseInt(prompt("ingrese un numero entero entre 0 y " + n));

para mostrar si el numero lanzado era mayor o menor al numero pensado, dentro del bloque del else, agregue un operador ternario que me verifica si el numero lanzado es mayor al numero pensado, de ser true, ejecuta lo que esta despues del signo ?* en este caso el numero lanzado es mayor al numero pensado, si la condición resulta ser *false ejecuta lo que se encuentra despues de los **: en mi caso El numero lanzado es menor al numero pensado.

(numLanzado > numPensado) ? imprimir("El numero lanzado " + numLanzado + " es mayor al numero pensado: " + numPensado) : imprimir("El numero lanzado " + numLanzado + " es menor al numero pensado: " + numPensado);

Otra forma de realizar esto mismo en usando condicionales if y else

if(numeroLanzado > numeroPensado){
     imprimir("El numero lanzado " + numeroLanzado + " es mayor al numero pensado: " + numeroPensado);
 }else{
     imprimir("El numero lanzado" + numeroLanzado + " es menor al numero pensado: " + numeroPensado);
}

Código completo

<meta charset="UTF-8">

<h1>PROGRAMA - JUEGO DE ADIVINACIÓN</h1>

<script>

    function saltarlinea(){
        document.write("<br>");
        document.write("<br>");
        document.write("<br>");
    }

    function imprimir(frase){
        document.write(frase);
        saltarlinea();
    }

    function loteria(n){
        return Math.round(Math.random()*n);
    }

    var n=parseInt(prompt("Ingrese el numero tope"));

    var numPensado = loteria(n);
    var numLanzado = parseInt(prompt("ingrese un numero entero entre 0 y " + n));

    if(numPensado == numLanzado){
        imprimir("usted acertó");
    }else{
        imprimir("Usted erró, el numero pensado era " + numPensado);

        (numLanzado > numPensado) ? imprimir("El numero lanzado " + numLanzado + " es mayor al numero pensado: " + numPensado) : imprimir("El numero lanzado " + numLanzado + " es menor al numero pensado: " + numPensado);
    }

</script>

1 respuesta

Hola, Apreciamos tu interés en compartir en el foro. No es necesario que publiques la respuesta a tu ejercicio aquí. Puedes hacerlo en Discord, donde hay una sección reservada para eso. El foro es principalmente para expresar tus dudas y cooperar con otros compañeros. Recordamos que no es obligatorio responder a ningún ejercicio en el foro, ni suman puntos o son usados como criterio para el avance en el programa. Pedimos que siempre que sea posible, por favor etiquetes tu tópico para que sea más sencillo identificar si es una duda, sugerencia, etc. ¡Deseamos que puedas cumplir con todos tus objetivos y tener éxito en tus estudios, saludos!

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