1
resposta

Jogo da Adivinhação Incrementado

Consegui fazer um sistema de seleção de dificuldades e mais alguns extras.

<meta charset="UTF-8">
<h1>Advinhe o Numero</h1>
<input placeholder="Digite um numero de 0 a 10" >

<button >Enviar</button>

<script>

    function dificuldades(select,dificultDispon){
        var dificultSelect = dificultDispon[(select) - 1];
        var intervaloNum = 10; // definir o limite padrao de escolha do numero
        var qtdNum = 2; // Definir o padrão de numeros sorteados

        if( dificultSelect == "Muito Difícil"){
            intervaloNum = 35;
            input.placeholder = "Digite um numero de 0 a 35";
            qtdNum = 1
        }
        if(dificultSelect == "Difícil"){
            intervaloNum = 20;
            input.placeholder = "Digite um numero de 0 a 20";
            qtdNum = 1
        }
        if(dificultSelect == "Médio"){
            intervaloNum = 15;
            input.placeholder = "Digite um numero de 0 a 15";
        }
        if(dificultSelect == "Muito Fácil"){
            qtdNum = 4;
        }

        return dificuldadeInfo = [dificultSelect, intervaloNum, qtdNum]; 
    }

    function sorteio(intervalo){
        var numSorteado = Math.round(Math.random() * 100);

        while(numSorteado > intervalo){
            numSorteado = Math.round(Math.random() * 100);
        }

        return numSorteado
    }

    function sorteia(intervalo, qtdNum){
        var numSorts = [] ;
        var sort = 0;
        for ( i = 0; i < qtdNum; i++){

            sort = sorteio(intervalo);

            while(numSorts.includes(sort)){ //lista.includes(item) procura o item na lista e retorna true ou false 
                sort = sorteio(intervalo);
            }

            numSorts.push(sort);
        }

        return numSorts
    }

    function verificar(){ 

        var numLista = false;
        var acerto = "";
        var numeroEscolhido = input.value;

        input.focus();

        if( numeroEscolhido > DificuldadeInfo[1]){
            alert("Digite um valor dentro do intervalo de 0 a " + DificuldadeInfo[1]);
            input.value = "";
        }

        if(numeroEscolhido < DificuldadeInfo[1] && numeroEscolhido !=''){
            numeros.push(parseInt(numeroEscolhido)); /*adiciona os numeros na lista*/
        }

        for ( c = 0; c < numSort.length; c++){

            if ( numeroEscolhido == numSort[c] ){

                if ( erros == 0){
                    alert("Parabens!! Voce Acertou de primeira!! ");

                }else{
                    alert("Parabens!! Voce Acertou !! Voce errou um total de "+ erros +" veze(s)");
                }

                numLista = true;

                for(i = 0; i <= erros; i ++){ /*Escreve no final as tentativas*/

                    if( numSort.includes(numeros[i])){
                        acerto = "Certo => ";
                    }

                    document.write("Na Sua "+(i + 1)+"º Tentativa Voce Escolheu o Numero "+acerto+ numeros[i]);
                    document.write("<br>");
             }

                document.write("<h3>Numero(s) Pensado(s): " + numSort + "</h3>");
                break;
            }
          }   

          if ( numLista == false && numeroEscolhido <= DificuldadeInfo[1] && numeroEscolhido !=''){
                alert("voce errou. Tente novamente. ");
                input.value = "";
                input.focus(); /*deixa a caixa de seleção em foco para poder digitar*/
                erros++;

          }

    }

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

var erros = 0;
var numeros = [];

var dificultDispon = ["Muito Difícil", "Difícil","Médio","Fácil", "Muito Fácil"];
var selectDificult = parseInt(prompt("Selecione uma dificuldade : \n 1 - Muito Dificil | 2 - Difícil | 3 - Médio | 4 - Fácil | 5 - Muito Facil"))

    while( selectDificult > 5 || selectDificult == 0 || isNaN(selectDificult) == true ){ // 5 = quantidade de dificuldades
        selectDificult = parseInt(prompt("Digite apenas numeros de 1 a 5 :\n 1 - Muito Dificil | 2 - Difícil | 3 - Médio | 4 - Fácil | 5 - Muito Facil")); // valida o selectDificult
    }

    var DificuldadeInfo = dificuldades(selectDificult,dificultDispon);

    var numSort = sorteia(DificuldadeInfo[1],DificuldadeInfo[2]);
    var probabilidade = (numSort.length / (DificuldadeInfo[1]+1))*100;
    console.log(numSort); // teste array

    document.write("<br><br><b>Dificuldade:</b> "+ DificuldadeInfo[0]);
    document.write("<br><br><b>Quantidade de Numeros Gerados:</b> "+ DificuldadeInfo[2]);
    document.write("<br><b>Chance de acerto:</b> " + probabilidade + "%");


botao.onclick = verificar ;


</script>
1 resposta

Olá Eduardo, como vai?

Muito bem, obrigada em compartilhar sua resposta. É bom ver o diferentes pontos de vista isso nos ajuda e enriquece nosso conhecimento!

Outra maneira de compartilhar seu código é pelo LinkedIn quanto subir como projeto no Github.

Pois assim começa a criar seu portifólio no GitHub e movimenta mais seu LinkedIn.

Abraços e ótimos estudos! :)

Se está resposta te ajudou, por favor, marca como solucionado ✓. Continúa com seus estudos :)