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

Posible solución al desafío

Hola a todas y todos: Presento mi posible solución al desafío, aunque he de admitir que para la primera parte (definir el número máximo que es 100 o 1000) le pedí ayuda a Luri.

Este sería el código:

// Definimos la variable para indicar el límite máximo, que en este caso sería 100
let numeroMaximo = 100;

// Solicitamos al programa que genere un número secreto aleatorio entre 1 y el límite máximo que es 100
let numeroSecreto = Math.floor(Math.random() * numeroMaximo) + 1;

// Se define la variable en la cual el usuario ingresará el número
let numeroUsuario = 0;

// Definimos la cantidad de intentos que tendrá el usuario, en este caso 5
let intentos = 1;
let intentosTotales = 5;

// Iniciamos el ciclo revisando que el número de intentos sea menor que el número máximo de intentos

while (intentos < intentosTotales) {
    numeroUsuario = prompt(`Adivina el número secreto entre 1 y ${numeroMaximo}:`);
    // Se transforma el tipo de dato a entero
    numeroUsuario = parseInt(numeroUsuario);

    if (numeroUsuario == numeroSecreto) {
      alert(`¡Felicitaciones, acertaste el número secreto ${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++;
    
    if (intentos > intentosTotales) {
            alert(`Llegaste al número máximo de ${intentosTotales} intentos. El número secreto era ${numeroSecreto}`);
            break;

Agradezco por favor cualquier observación, comentario o sugerencia adicional.

Gracias por su amable atención.

3 respuestas

Hola como estas, solo puedo decirte que te falto cerrar la llave al final. Salu2..

Hola Giovani Tienes razón, al momento de copiar y pegar el código se me pasó por completo revisarlo. Gracias por notarlo, muy amable.

// Definimos la variable para indicar el límite máximo, que en este caso sería 100
let numeroMaximo = 100;

// Solicitamos al programa que genere un número secreto aleatorio entre 1 y el límite máximo que es 100
let numeroSecreto = Math.floor(Math.random() * numeroMaximo) + 1;

// Se define la variable en la cual el usuario ingresará el número
let numeroUsuario = 0;

// Definimos la cantidad de intentos que tendrá el usuario, en este caso 5
let intentos = 1;
let intentosTotales = 5;

// Iniciamos el ciclo revisando que el número de intentos sea menor que el número máximo de intentos

while (intentos < intentosTotales) {
    numeroUsuario = prompt(`Adivina el número secreto entre 1 y ${numeroMaximo}:`);
    // Se transforma el tipo de dato a entero
    numeroUsuario = parseInt(numeroUsuario);

    if (numeroUsuario == numeroSecreto) {
      alert(`¡Felicitaciones, acertaste el número secreto ${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++;
    
    if (intentos > intentosTotales) {
            alert(`Llegaste al número máximo de ${intentosTotales} intentos. El número secreto era ${numeroSecreto}`);
            break;
        }
    }

Creo que ahora sí está bien.

Si pero sigue teniendo error así que te compartiré el codigo corregido seria este

// Definimos la variable para indicar el límite máximo, que en este caso sería 100
let numeroMaximo = 100;

// Solicitamos al programa que genere un número secreto aleatorio entre 1 y el límite máximo que es 100
let numeroSecreto = Math.floor(Math.random() * numeroMaximo) + 1;

// Se define la variable en la cual el usuario ingresará el número
let numeroUsuario = 0;

// Definimos la cantidad de intentos que tendrá el usuario, en este caso 5
let intentos = 1;
let intentosTotales = 5;

// Iniciamos el ciclo revisando que el número de intentos sea menor que el número máximo de intentos

while (intentos < intentosTotales) {
    numeroUsuario = prompt(`Adivina el número secreto entre 1 y ${numeroMaximo}:`);
    // Se transforma el tipo de dato a entero
    numeroUsuario = parseInt(numeroUsuario);

    if (numeroUsuario == numeroSecreto) {
      alert(`¡Felicitaciones, acertaste el número secreto ${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++;
    
    if (intentos > intentosTotales) {
            alert(`Llegaste al número máximo de ${intentosTotales} intentos. El número secreto era ${numeroSecreto}`);
            break;
        }
    }
}

Espero que te haya sido de ayuda, buena suerte