1
respuesta

Haz lo que hicimos en el aula

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Juego Secreto - Arrays</title>
</head>


<body>
    <h1>Juego de Secreto</h1>
    <input type="text">
    <button>Verificar si acertó con el secreto</button>
    <script>
        //numero aleatoria entre 0-10

        // creamos un arreglo con n numeros aleatorios
        var cantidad=5;
        var secreto=[];
        secreto=arregloNumerosAleatorios(cantidad)
        console.log(secreto);

        // the user is going to define the value secret

        //Usamos el querySelector con el fin de capturar los elementos del DOM
        //En el caso de que se de click al botton damos inicio a la funcion verificar

        var input=document.querySelector("input");
        var button=document.querySelector("button");
        //El metodo "focus" hace que el cursor se centre en la caja de texto de input
        input.focus();


        button.onclick=verificar;


        // Declaracion de funciones
        function saltoLinea(){
            document.write('<br>');
        }
        function imprimir(frase){
            saltoLinea();
            document.write(frase);
        }

        function verificar(){
            // Verificamos si es correcto
            //Accedemos en el valor contenido en el input y lo capturamos
            bandera=false;

            secreto.forEach(item=>{
                var numero=input.value;

                if(parseInt(numero)===item){
                    bandera=true;
                    // Esta es una manera de finalizar el ciclo del forEach mediante el uso de return
                    return alert("Felicitaciones acerto!!");

                }
            });

            if(!bandera){
                alert('Error!');
            }

            //limpiar valor en el input
            input.value="";
            //
            input.focus();

        }

        // Crea numero aleatorios
        function numeroAletorio(){
            return Math.round(Math.random()*10)
        }

        // Crea una lista con numeros aleatorios
        function arregloNumerosAleatorios(cantidad){
            var lista=[]

            for(var i=0;i<cantidad;i++){
                var flag=false;
                var numero=numeroAletorio();
                console.log(numero)
                // Para validar la repeticion de numeros aleatorios
                for(var j=0;j<lista.length;j++){
                    if(numero==lista[j]){
                        flag=true;

                    }
                }
                if(!flag && numero!=0){
                    lista.push(numero);
                }else{
                    //En el caso que se detecte repeticiones se debe restar una iteracion a nuestro ciclo for
                    //Esto para que se respete la cantidad de numeros aleatorios solicitados

                    i--;
                }

            }
            return lista;
        }

    </script>
</body>
</html>
1 respuesta

Hola, felicidades por tu dedicación en el curso. Gracias por tu participación en el foro. Sin embargo, no hace falta que publiques la respuesta a tu ejercicio aquí. Puedes hacerlo en Discord, donde hay un canal específico para eso. El foro es más bien para plantear tus dudas y ayudar a 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!