1
respuesta

[Duda] BUCLE INFINITO

Hola! Si no pongo un break en la parte del IF que valide que la condición es verdadera, aunque acierte a la primera el programa se repite. Al profe no. Acierta y sale del bucle y tenemos el mismo código.

let numeroSecreto = 5; let numeroUsuario = 0; let intentos = 1 let palabraVeces = "vez";

  while(numeroUsuario !== numeroSecreto){
      numeroUsuario = prompt("¿Me indicas un número entre 1 y 10 por favor?");
  
      if (numeroUsuario == numeroSecreto) { 
          alert(`Acertaste! El número secreto es ${numeroUsuario}. Lo hiciste en ${intentos} ${palabraVeces}!`);
          //break; // Salir del bucle ya que adivinó el número <----SIN ESTE BREAK, QUE EL PROFE NO USA, MI PROGRAMA SE REPITE AUNQUE ACIERTE A LA PRIMERA
      } else {
          if (numeroUsuario > numeroSecreto){
              alert("El número secreto es menor")
          } else {
              alert("El número secreto es mayor")
          }
          intentos = intentos + 1;
          palabraVeces = "veces";
          if(intentos > 3){
            alert("Llegaste al número máximo de intentos");
            break;
          }
      } 
  }
  
  
  Gracias!
1 respuesta

¡Hola Maria, espero que estés bien!

Entiendo tu duda sobre el uso del break en el bucle. En el contexto que has compartido, el break se utiliza para salir del bucle while cuando se cumple una condición específica, en este caso, cuando los intentos superan tres. El break es una forma de romper la ejecución del bucle y salir de él inmediatamente.

En tu código, si no utilizas el break después de acertar el número secreto, el bucle seguirá ejecutándose, lo que resultará en que el programa se repita, incluso si has acertado a la primera. El break es necesario en este caso para garantizar que el bucle se detenga una vez que se haya acertado el número.

Es importante recordar que el uso del break debe ser cuidadoso, ya que puede interrumpir el flujo normal del programa y, en algunos casos, dificultar la comprensión del código. Sin embargo, en situaciones como la tuya, donde se necesita salir del bucle bajo ciertas condiciones, el break es una herramienta útil.

Espero que esta explicación te ayude a comprender mejor el uso del break en tu código. Si tienes más preguntas al respecto, no dudes en preguntar.

Espero haber ayudado y buenos estudios!