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

Ayuda! mi código está malo y no sé dónde está el error

<meta charset="UTF-8">

<h1>PROGRAMA ADIVINA EL NÚMERO</h1>

<script>

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


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

    var numeroPensado = Math.round(Math.random()*10);
    var intentos = 3;
    var contador = 1;


    while(contador <= intentos)
    {       
        var numeroLanzado = parseInt(prompt("Ingrese un número entre 0-10"));
        if (numeroPensado==numeroLanzado)
        {
            alert("¡ACERTASTE!, en el intento " + contador + " el número pensado era " + numeroPensado);
            break
        }
        else
        {
            alert("ERRASTE");
    contador++;
        }   

        if (numeroPensado==numeroLanzado)
        {
            imprimir("¡ACERTASTE!, en el intento " + contador + "el número pensado era " + numeroPensado);

        }
        else
        {
            imprimir("ERRASTE, el número pensado era " + numeroPensado);
        } 
    }

    imprimir("FIN");


</script>
2 respuestas

PROGRAMA ADIVINA EL NÚMERO

Hola Erika, espero que estés bien.

El segundo if debe quedar fuera del bucle while, porque cuando la persona acertar el número el bucle será interrumpido y no responderá correctamente en la pantalla porque el código que sigue después de break no será ejecutado. También aconsejo a poner el contador al final del bucle para evitar equivocaciones.

Está es la parte del código arreglada

while(contador <= intentos)
    {       
        var numeroLanzado = parseInt(prompt("Ingrese un número entre 0-10"));
        if (numeroPensado==numeroLanzado)
        {
            alert("¡ACERTASTE!, en el intento " + contador + " el número pensado era " + numeroPensado);
            break
        }
        else
        {
            alert("ERRASTE");
        }   

        contador++;
    }

    if (numeroPensado==numeroLanzado)
        {
            imprimir("¡ACERTASTE!, en el intento " + contador + " el número pensado era " + numeroPensado);

        }
        else
        {
            imprimir("ERRASTE, el número pensado era " + numeroPensado);
      } 

Tambien te dejo el código completo suyo ya con los arreglos, para que lo mires bien.

<meta charset="UTF-8">

<h1>PROGRAMA ADIVINA EL NÚMERO</h1>

<script>

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


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

    var numeroPensado = Math.round(Math.random()*10);
    var intentos = 3;
    var contador = 1;


    while(contador <= intentos)
    {       
        var numeroLanzado = parseInt(prompt("Ingrese un número entre 0-10"));
        if (numeroPensado==numeroLanzado)
        {
            alert("¡ACERTASTE!, en el intento " + contador + " el número pensado era " + numeroPensado);
            break
        }
        else
        {
            alert("ERRASTE");
        }   

        contador++;
    }

    if (numeroPensado==numeroLanzado)
        {
            imprimir("¡ACERTASTE!, en el intento " + contador + " el número pensado era " + numeroPensado);

        }
        else
        {
            imprimir("ERRASTE, el número pensado era " + numeroPensado);
      } 

    imprimir("FIN");


</script>