2
respostas

Manipulando array

Apesar de fazer a programação, senti bastante dificuldade na lógica desta programação.

<meta charset="utf-8">

<input/>  
<button>Número escolhido</button>   

<script>

    function sorteia() {    // função feita para gerar números aleatórios de 1 a 10.

        return Math.round(Math.random() * 10);
    }

    function qnt(quantidade) {        // função criada para definir a quantidade de elementos e que eles não se repitam.

        var numerosSorteados = [];

        var repeticao = 1         // variável usada para saber o numero de repetições.

        while(repeticao <= quantidade) {         // enquanto a quantidade de repetições for menor ou igual a quantidade a variavel numerosSorteados receberá o retorno da função sorteia.

            var numeroAleatorio = sorteia(); 
            var acertou = false  

            for(var posicao = 0; posicao < numerosSorteados.length; posicao++) {

                if(numerosSorteados == numeroAleatorio) {

                    acertou = true;
                    break;

                }
            }

            if(acertou == false) {          // se não acertar, a variável numerosSorteados vai puxar mais um número do sorteia

            numerosSorteados.push(numeroAleatorio);    

            repeticao++;         // dentro desse ciclo ele vai ser adicionado 1 elemento na variável repeticao.

            }
        }

        return numerosSorteados;
    }

    var sorteados = qnt(6);       // array com a quantidade de números escolhidos


    console.log(sorteados);



    var input = document.querySelector("input");       // variável para puxar o valor do input

    input.focus()       // começar com o foco para escrever no input



    function chuta() {       // função para puxar a informação

        var acertou = false;    // variável lógica

        for(var posicao = 0; posicao < sorteados.length; posicao++) {
            // ciclo criando uma váriavel posição que é a dos números escolhidos no array.

                if(sorteados[posicao] == input.value) {
                        // importante frisar que a variavel sorteados está acompanhado de posição para que ele avalhie a quantidade total de possibilidades

                    alert("Você acertou, os números escolhidos foram " + sorteados + ".");
                    acertou = true;
                    break;        // quebra do ciclo ao acertar o número
                }
        }    

        if(acertou == false)    {          // se a variavel lógica for falsa envia o alerta. Obs: ficou fora do ciclo para não repetir a quantidade de posições que possuia.

            alert("Você errou!")

        }

        input.value = "";         // usado para zerar o número após responder.

        input.focus()         // dar foco após cada tentativa.

    }


    var button = document.querySelector("button");        // variavel para puxar o botão para o java script

    button.onclick = chuta;       // responsável por ativar a função chuta, a programação só é chamada através deste botão.

</script>
2 respostas

eu tbm confesso que senti, vou ter que rever essa aula e estudar mais disso.

me encontro na mesma... vou rever as aulas e praticar muito !