1
resposta

Colocando limite de tentativas

Eu tentei colocar um limite de tentativas, já usando o 'input' e o 'button'. Segue o código:

<meta charset="UTF-8">

<input/>
<button>Comparar</button>

<script>

var input = document.querySelector("input");

var numPensado = Math.round(Math.random() * 10);

var tentativa = 1

var tentativaLimite = 3

function verifica()  {

    if (input.value == numPensado && tentativa <= tentativaLimite) {

        alert("Aêêêêê. Você acertou! Que tal jogar na mega-sena?");

        } else {

            if(input.value != numPensado && tentativa <= tentativaLimite) {

        alert("Errooooooou. Vai lá, tenta de novo.");
            }

            if (input.value != numPensado && tentativa > tentativaLimite) {

                alert("So sorry. Você errou uma, duas, três vezes e o programa não quer mais brincar. Dê um F5 e tente de novo.");
            }

        }

        tentativa++;
    }    

var button = document.querySelector("button");
button.onclick = verifica;

</script>

Eu só tenho uma dúvida: seria possível utilizar o 'while' ao invés do 'if' que usei aqui?

1 resposta

Oi, Bruna! Tudo bem?! Interessante você ter colocado como condição o numero de tentativas.. dei uma olhada no sue código e fiz algumas ponderações:

1.No seu antigo código(lin 30) você compara se o valor é diferente, assim:

if (input.value != numPensado && tentativa > tentativaLimite) {

                alert("So sorry. Você errou uma, duas, três vezes e o programa não quer mais brincar. Dê um F5 e tente de novo.");
            }

porém a mensagem de que as tentativas estouraram não irá aparecer se o valor for igual, entendeu? Então tirei a primeira condição e deixei o seguinte

if (tentativa > tentativaLimite) {
                alert("So sorry. Você errou uma, duas, três vezes e o programa não quer mais brincar. Dê um F5 e tente de novo.");
            }
  1. Você falou sobre trocar o while.. bom, basicamente olhe bem pro seu código e veja que usou um while. Contendo condições e executando o código mais de uma vez. Perceba que essas estruturas de repetição, nasceram das estruturas mais simples, como condicionais, para ajudar a repetir tarefas. Então o que você faz com o while, for... você consegue fazer códigos mais simples, só vai dar mais trabalho.

Enfim, espero ter respondido sua pergunta.. qualquer dúvida estou a disposição.

Abraços, boa sorte na sua jornada!