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

[Proyecto] Desafío : Lógica de la programación sumérgete a la programación con Java Script

// El reto es hacer que el usuario pueda jugar en el intervalo que el desea
//Principal error no declara afuera, luego se reasigna su valor
//Saludo
alert("Hola, acontinuación un juego para adivinar el número secreto");
console.log("Saludo juego número secreto");
//Pidiendo al usuario el intervalo que desea

alert("Ahora piensa el intervalo de números que quieres usar para jugar");
let min=0
min=parseInt(prompt("¿Por favor dame el primer número"));
let max=0
max=parseInt(prompt("Por favor dame el segundo número"));

//Declarando todas las variables
let maximosIntentos=3;
let intentosDisponibles=1
let numeroDeUsuario=0;
let vidas=0;
let conteo=1;
let numeroSecreto=(Math.floor(Math.random()*(max-min+1)+min));//Aqui guardo el numero ramdom incluye los extremos(Documentación pero es facil de entender solo sigue la jerarquia de operaciones)
console.log(`El número correcto es : ${numeroSecreto}`);

if((max-min)<=10){//Si la diferencia del intervalo es pequeña automáticamente tendrá solo 3 intentos
alert(`El número se encuentra entre el ${min} y el ${max}, pero tendrás 3 intentos para hacerlo`);
console.log(`Indicación del intercalo de la respuesta [${min}-${max}]`);




while( numeroDeUsuario!=numeroSecreto){//Evalúa la condición antes es decir en este momentos es diferente, ejecuta y lleva la información de nuevo arriba para reevaluar la condición

    numeroDeUsuario= parseInt(prompt("¿Me indicas un número por favor: "));//Reasignando valor
    console.log(`El número ingresado por le usuario es : ${numeroDeUsuario}`);
    

    
    console.log(typeof(numeroDeUsuario));// nuestra variable es una caja que contiene información y console.log permite abrirla y ver su contenido

    // Condicional if y bloque de código comparación
    if (numeroDeUsuario == numeroSecreto){

    alert(`Correcto acertaste el número bro, el cuál era ${numeroDeUsuario}, lo hiciste en ${intentosDisponibles} ${intentosDisponibles==1 ? `vez` :`veces`}`);
    console.log(`El usuario logro adivinar el número : ${numeroDeUsuario}`);                                        //Forma de preguntar if?  y else: de forma abreviada

    }else{
        if(numeroDeUsuario>numeroSecreto){
            alert("El número secreto es menor");
            console.log(`El usuario no logro adivinar el número : ${numeroSecreto}, por el contrario eligió ${numeroDeUsuario}`);
        }else{
            alert("El número secreto es mayor");
            console.log(`El usuario no logro adivinar el número : ${numeroSecreto}, por el contrario eligió ${numeroDeUsuario}`);
        }
        
        if(intentosDisponibles==3){
            alert(`Completaste el máximo número de intentos ${maximosIntentos}`);
            alert(`El usuario no logro adivinar el número : ${numeroSecreto}`);
            break;     
}
        intentosDisponibles=intentosDisponibles+1;//También podemos crearlo con un número y de crementarlo hasta que la condición sea diferente de cero
        //palabraveces="veces";

}
}
}else {//Aqui le damos la opción al usuario de elegir una cantidad de intentos más amplia dado su intervalo para jugar
    alert("Parece que la diferencia es un poco alta");

    vidas= prompt("Por favor ingresa el número de intentos que quieres tener");
    alert(`El número se encuentra entre el ${min} y el ${max}, pero tendrás ${vidas} intentos para hacerlo`);
    console.log(`Indicación del intercalo de la respuesta [${min}-${max}]`);

    conteo=1;

    while(numeroDeUsuario!=numeroSecreto){

        numeroDeUsuario= parseInt(prompt("¿Me indicas un número por favor: "));

        console.log(`El número ingresado por le usuario es : ${numeroDeUsuario}`);

            if(numeroDeUsuario==numeroSecreto){
                
                alert(`Correcto acertaste el número bro, el cuál era ${numeroDeUsuario}, lo hiciste en ${conteo} ${conteo==1 ? `vez` :`veces`}`);//Entonces respetar la sintaxis con las comillas invertidas, puede ser de otra forma usando la suma pero asi será más sencillo
                
                console.log(`El usuario logro adivinar el número : ${numeroDeUsuario}`);

            }else{ 

                if(numeroDeUsuario>numeroSecreto){
                alert(`El número ingresado es mayor al número secreto, intento ${conteo} de ${vidas}`);
                console.log(`El número ingresado es mayor al número secreto, intento ${conteo} de ${vidas}`);}

            else{
                alert(`El número ingresado es menor al número secreto, intento ${conteo} de ${vidas}`);
                console.log(`El número ingresado es menor al número secreto, intento ${conteo} de ${vidas}`);
                }
                
                if(conteo==vidas)
                {
                    alert("Se término el juego");
                    break;
                }
                conteo=conteo+1;  

                }

        }

}    
1 respuesta

te comapto mi codigo.

let intentosmaximo = parseInt(prompt("Ingresa número máximo: "));
let minimo = parseInt(prompt("Ingresa número mínimo: "));
let numeroSecreto = Math.floor(Math.random()*(max-min+1))+min;

let numeroUsuario = 0;
let intentos = 1;

//let palabraVeces = 'vez';
let maximosIntentos = 20;


while (numeroSecreto != numeroUsuario) {
    numeroUsuario = parseInt(prompt(`Me indicas un número entre ${minimo} y ${maximo}  por favor:`));

    
    console.log(typeof(numeroUsuario));
    console.log(typeof(numeroSecreto));
    console.log(typeof(intentos));


    if (numeroUsuario == numeroSecreto) {
        alert(`Acertaste, el número es: ${numeroUsuario}. Lo hiciste en ${intentos} ${intentos==1 ? 'vez' : 'veces' }`);
    } else {
        if (numeroUsuario > numeroSecreto) {
            alert('El número secreto es menor');
        } else {
            alert('El número secreto es mayor');
        }
        intentos++;
        palabraVeces="veces";
        if (intentos > maximosIntentos) {
            alert(`Llegaste al número máximo de ${maximosIntentos} intentos`);
            break;
        }
    }

}

alert("¡Hasta pronto!");