1
resposta

Desafio Consolidando Conhecimento

Essa foi a minha solução para o desafio, eu aproveitei o conhecimento sobre funções recursivas, funções que chamam a si mesma, para o jogo não acabar e ainda manter o escopo deste cápitulo e não entrar no escopo de laços ainda.

<meta charset="UTF-8">

<script>
    let menor_numero_sorteado = parseInt(prompt("Selecione o menor número à ser sorteado"));
    let maior_numero_sorteado = parseInt(prompt("Selecione o maior número à ser sorteado"));
    let numero_sorteado = menor_numero_sorteado + sorteia(maior_numero_sorteado - menor_numero_sorteado);
    console.log(numero_sorteado);
    adivinhe(numero_sorteado);

    function adivinhe(sorteado) {
      let numero_escolhido = parseInt(prompt(`Selecione um número entre ${menor_numero_sorteado} e ${maior_numero_sorteado}`));
      if(numero_escolhido === sorteado) {
        mostra("Parabéns você acertou ^^");
      }
      else if(numero_escolhido > sorteado) {
        alert("Puxa não foi desta vez, o número sorteado é menor");
        adivinhe(sorteado);
      }
      else if(numero_escolhido < sorteado) {
        alert("Puxa não foi desta vez, o número sorteado é maior");
        adivinhe(sorteado);
      }
    }
    function sorteia(raio) {
      return Math.round(Math.random()*raio);
    }
    function mostra(mensagem) {
      document.write(`<big><b>${mensagem}</b></big><br>`);
    }
</script>
1 resposta

Olá, Rodrigo, tudo bem?

Analisei o código e ele está funcionado bem, parabéns!

Deixo como sugestão, implementar um código que caso o usuário insira um número que não esteja no intervalo, apresentar uma mensagem indicando que o número não é válido.

Recomendo, caso se sinta confortável em compartilhar seu conhecimento, interagir com outros estudantes, trocar experiências e fazer networking, que participe do Discord oficial da Alura de alunas e alunos:

Caso tenha dúvidas, estarei à disposição para te ajudar!

Grande abraço e bons estudos!