Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Qual é o erro do meu código?

Olá pessoal, boa tarde!

Sou deficiente visual total e estou iniciando no mundo da programação. Soube que, para cada vídeo-aula, há a possibilidade de contar com o auxílio da IA da Alura, mas não consigo encontrar o campo de texto para fazer a pergunta a ela e, fiquei com dúvida no código da aula 04 - Operador ternário. Como também não consegui encontrar o código completo por escrito na transcrição, pois lá aparecem apenas as linhas divididas, não consegui entender de fato onde estou errando.

Se puderem me ajudar... Aí vai meu código:

 alert('Bem-vindo ao Jogo do Secret Number!');
let secretNumber = 36;
console.log(secretNumber);
let chute;
let tentativas = 1;
let palavraTentativa = tentativas > 1 ? 'tentativas' : 'tentativa';

//enquanto chute não for igual ao Secret Number
while (chute != secretNumber) {
    chute = prompt('Escolha um número entre 1 e 50');

            if (secretNumber < chute) {
         alert(`O Secret Number é menor do que ${chute}`);
            } else { 
        alert(`O Secret Number é maior do que ${chute}`);           
    } else {
        if (chute = secretNumber) {
            alert(`Isso aí! Você descobriu o Secret Number ${secretNumber} com ${tentativas} ${palavraTentativa}.`);
    }
    }
}
//tentativas = tentativas + 1;
tentativas++;
        }

Muito obrigada!

2 respostas
solução!

Parece que você declarou a variável "let palavraTentativa" no lugar errado, ela deveria ser declarada na penúltima linha do código. Também me parece que tem alguma confusão nos "if" que estão dentro do "while"

Não sei se ajudei, mas se quiser logo abaixo dessa linha deixo meu código com a resolução final da Aula 04 Boas práticas de programação:

alert('Boas vindas ao jogo do número secreto');
let numeroMaximo = 5000;
//Math.random() gera numeros entre 0 e 1, exemplo 0.48, por isso adicionamos 1 para não ter número 0.1 e sim o 1.1 e depois transformamos para inteiro (parseInt())
let numeroSecreto = parseInt(Math.random() * numeroMaximo + 1);
console.log(numeroSecreto);
let chute;
let tentativas = 1;

// enquanto chute não for igual ao n.s.
while (chute != numeroSecreto) {
    //exemplo de template strig
    chute = prompt(`Escolha um número entre 1 e ${numeroMaximo}`);
    // se chute for igual ao número secreto
    if (chute == numeroSecreto) {
        break;
    } else {
        if (chute > numeroSecreto) {
            //exemplo de template strig
            alert(`O número secreto é menor que ${chute}`);
        } else {
            //exemplo de template strig
            alert(`O número secreto é maior que ${chute}`);
        }
        // tentativas = tentativas + 1;
        tentativas++;
    }
}

let palavraTentativa = tentativas > 1 ? 'tentativas' : 'tentativa';
alert(`Isso ai! Você descobriu o número secreto ${numeroSecreto} com ${tentativas} ${palavraTentativa}.`);

Olá Mauricio, bom dia!

    Muito obrigada! Foi útil sim! Consegui resolver o problema com o código.