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

else, me sale como error en mi programa.

buenas noches, tengo un error en mi código con el loop else al abrir el programa en el navegador me muestra error 'else' quedo atento gracias.

6 respuestas

En el else no te aparece usted erró a ti te aparece else, no se si entendi tu pregunta.

Hola Luis podrias mostrarnos tu codigo para poder comprender mejor tu problema?

Te paso mi código la clase

<meta charset="UTF-8">

<input/> <!--vamos a pedir un dato-->

<button>Verificar si acertó con el secreto</button>

<script>

   var secreto = [3,5,7,9]; // Arrays

   //var secreto = Math.round(Math.random()*10);   //modificamos número para que sea automático y aleatorio 
   var input = document.querySelector("input");    //función querySelector es un puente entre HTML y JS; esto nos trae el input de html a JS
   input.focus(); //Esto es para que el cursor aparezca en el recuadro al inicio


   function verificar(){

        if (parseInt(input.value) == secreto) {

           alert("Usted acertó");

        }

        else{

            alert("Usted erró");

        }

        input.value = "";  //para que recuadro vuelva a estar en blanco
        input.focus(); //el cursor retorna al recuadro
   }

    var button = document.querySelector("button");
    button.onclick = verificar;

</script>

hola luis te muestra el mensje de else porque no estas iterando el array, entonces cuando haces la pregunta en el if no lo puede igualar porque no encuentra en la variable "secreto". lo que debes hacer es dentro de la funcion usar un "for"que itere el array y de esta manera pueda comparar el numero que ingreso el usuario con cada uno del array for(var i =0; i<= secreto.lenght; i++){ aca va el if } luego te paso el codigo si no lo pudiste solucionar ahora estoy sin la pc desde el celular saludos

Hola Mabel tu codigo siempre tirara el menaje de error porque declaraste un array con numeros pero no estas iterando en ella y el "if" al no tener con que igualar toma el camino del "else " por eso te sale ese mensaje, aca te paso el codigo al que se le agrega un "for" para iterar por el array y de esta manera en el "if " se podra igualar el valor ingresado con el contenido del array, Luis creo que tambien te paso lo mismo con tu codigo, espero haber ayudado

<meta charset="utf-8">

<input>
<button>verificar</button>
<script>

    var secretos =[3,5,7,9]; // nuestro array de numeros secretos


    var input = document.querySelector("input");
    var button = document.querySelector("button");
    input.focus();
    // funcion para verificar si el numero secreto es encontrado
    function verificar(){
        var encontrado = false;
        for(var posicion = 0; posicion <=secretos.length; posicion++){

            if(parseInt(input.value)==secretos[posicion]){
            alert("usted acerto");
            encontrado = true;
            break;
            }

        }
        if(encontrado == false){
            alert("usted erró");
        }


        input.value = ""; //vacia el input
        input.focus();// hace que el cursor se focalice en la caja del input
    }
    button.onclick = verificar;


</script>

Hola, Juan ahora me fijo y te agradezco los comentarios. Saludos