Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

contador de intentos

tengo un inconveniente no se si a alguien le pase igua, no me quiere funcionar el contador, y tengo todo tal cual como en el video, pero el resultado solo dice acertastes el numero es tal, mas no indica el numero de intentos
// variables
let numeroSecreto = 4;
let numeroUsuario = 0;
let intentos = 1;

while (numeroUsuario !== numeroSecreto) {
numeroUsuario = prompt("me indicas un numero entre 1 y 10 por favor:");

console.log(numeroUsuario);

if(numeroUsuario==numeroSecreto) {
    // acertamos, fue verdadera la condicion
    alert (`acertastes, el numero es: ${numeroUsuario}. lo hicistes en ${intentos} veces`);
} else {
    
    if(numeroUsuario > numeroSecreto) {
        alert("el numero secreto es menor");
    } else {
        alert (" el numero secreto es mayor");
    }
    // incrementamos el contador cuando no acierta;
    intentos = intentos + 1;

    // la condicion no se cumplio
    //alert (" lo siento no acertastes el numero");
}

}

1 respuesta

Hola Diana, espero que estés bien

Parece que estás muy cerca de lograr que tu contador de intentos funcione correctamente. Vamos a revisar juntos tu código para asegurarnos de que todo esté en su lugar.

En tu código, estás incrementando el contador de intentos dentro del bloque else, lo cual es correcto. Sin embargo, para asegurarte de que el mensaje se muestra correctamente, debes verificar que la variable intentos esté siendo utilizada adecuadamente en el alert que se muestra cuando aciertas el número.

Aquí hay un ejemplo de cómo podrías ajustar tu lógica para asegurarte de que el mensaje se muestre correctamente:

let numeroSecreto = 4;
let numeroUsuario = 0;
let intentos = 1;

while (numeroUsuario !== numeroSecreto) {
    numeroUsuario = prompt("me indicas un numero entre 1 y 10 por favor:");

    console.log(numeroUsuario);
    
    if(numeroUsuario == numeroSecreto) {
        let palabraVeces = intentos === 1 ? "vez" : "veces";
        alert(`acertastes, el numero es: ${numeroUsuario}. lo hicistes en ${intentos} ${palabraVeces}`);
    } else {
        if(numeroUsuario > numeroSecreto) {
            alert("el numero secreto es menor");
        } else {
            alert("el numero secreto es mayor");
        }
        intentos = intentos + 1;
    }
}

En este ejemplo, he añadido una variable palabraVeces que cambia entre "vez" y "veces" dependiendo del número de intentos. Esto asegura que el mensaje sea gramaticalmente correcto cuando aciertas el número.

Espero que este ajuste te ayude a resolver el problema. ¡Espero haber ayudado y buenos estudios!