2
respuestas

Adivinanza con intentos - No entiendo el uso del Break

Cordial saludo,

Colegas mi código funciona bien, pero aún no entiendo el uso del "break" dentro del if que a su vez esta dentro del while, sabiendo que si es falso sale del if y entra al else para avisar que uno erró.

<meta charset="UTF-8">

<h1>PROGRAMA JUEGO DE ADIVINACIÓN CON INTENTOS</h1>
<hr/>


<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);
    console.log(numeroPensado);

    var intentos = 3;
    var contador = 1;


    while (contador <= intentos) {

        var numeroLanzado = parseInt(prompt("Ingrese un número entre 0-10"));
        if (numeroPensado == numeroLanzado){

            alert("Usted acertó en el intento " + contador + ", el número pensado era " + numeroPensado);
            break;

        }

        else {
            alert("Usted erró");
        }

        contador++;

    }

    if (numeroPensado == numeroLanzado){

imprimir("Usted acertó en el intento " + contador + ", el número pensado era " + numeroPensado);

}

else {

imprimir("Usted erró, el número pensado era " + numeroPensado);

}


    imprimir("Fin");

</script>
2 respuestas

Duverney el break realmente lo que hace es que se rompa la iteración del ciclo. es decir si por ejemplo hay un ciclo que debe ejecutarse 10 veces y en la iteración número 3 se coloca un break, las restantes 7 iteraciones del ciclo ya no se ejecutan. Te dejo este enlace para que lo leas y lo puedas entender mejor. Espero te ayude. https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Statements/break

Cordial Saludo Duverney, La función del Break es romper el ciclo, éste se cumple al momento que el usuario adivina el numero pensado.Es decir, Tenemos 3 intentos y en el primero el usuario adivina el numero, el break se pone en marcha y dice hasta aquí se ejecuta el ciclo porque el usuario adivinó el numero. Inmediatamente, El ciclo se rompe aunque falten 2 intentos. Si quitas el break, el ciclo continua ejecutándose la cantidad de veces que has establecido. Ejemplo: Establecemos 3 Intentos, en la primera el usuario adivina, el juego sigue pidiéndole al usuario que ingrese numero y solo terminará cuando se halla ejecutado la cantidad de veces que establecimos, en este caso 3 veces. Eso no tendría sentido, dado que el objetivo del juego es acertar al numero y si no acertamos, termina por haber errado la cantidad de veces que establecemos.