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

Dúvida desafio final!

Olá amigos, fiz meu código do desafio final, porém estou encontrando dificuldade na comparação das duas Arrays. O que pensei foi o seguinte, criar um novo array "confere" e armazenar os resultados iguais obtidos. Para isso criei a function comparaAposta. Mas nao estou conseguindo resultado pare este array confere.

<meta charset="UTF-8">
<h1>Loteria da Waives</h1>

<input type="text" id="numero" />
<input type="submit" value="Aposte seus numeros na Loteria da Waives!"
                    id="verificar"/>                    


<script>
var n1 = Math.round(Math.random() * 60);
var n2 = Math.round(Math.random() * 60);
var n3 = Math.round(Math.random() * 60);
var n4 = Math.round(Math.random() * 60);
var n5 = Math.round(Math.random() * 60);
var n6 = Math.round(Math.random() * 60);

var sorteados = [n1,n2,n3,n4,n5,n6];
var apostas = [];
var confere = [];
console.log(sorteados);


var comparaAposta = function (){
    for (var a = 0; a < 5; a++){
        for (var a = 0; a < 5; a++){
            if (sorteados[a] == apostas[a]){
            confere.push[a];
            }
        }    
    }
    console.log(confere.length);
    console.log(confere);
};

var adicionarApostas = function(){
    var numero = document.getElementById("numero").value;
    for (var i = 0; i < 5; i++){
        if (apostas[i] == numero){
            alert("Voce ja apostou nesse número");
            return;
        }
    }

    if(apostas.length > 5){
    alert("Voce ja jogou os 6 números");
    }else    {
            apostas.push(numero);
            console.log(apostas);
            comparaAposta();
    }
};


var botao = document.getElementById("verificar");
botao.onclick=adicionarApostas;


</script>
7 respostas

Bom não estudei lógica aqui ainda na caelum, mais faz o seguinte.. Tente mudar:

for (var a = 0; a < 5; a++){
for (var b = 0; b < 5; b++){
if (sorteados[a] == apostas[b])

Obrigado amigo, resolvi parcialmente. Usando o seguinte:

var contR = 0;

var comparaAposta = function (){
    for (var a = 0; a < 6; a++){
        for (var b = 0; b < 6; b++){
            if (sorteados[a] == apostas[b]){
            contR++;
            console.log(contR);
            confere.push(sorteados[a]);
            }
        }    
    }

Desta maneira consigo descobrir quantos números acertei. Porem nao consigo armazenar os numeros acertados com o push. O que estou fazendo de errado?

Você quer pegar os números que você acertou e armazenar em um outro local?

Sim, para poder exibir depois quais foram os números acertados.

solução!

Bom tenho um pouco de dificuldade por conta da sintaxe, mais pela lógica você pode tentar fazer maneiras:

1:
No caso você pode criar um terceiro array e logo depois do if jogar os valores acertados para ele. 

2:  
Tenta mudar o confere.push(sorteados[a]); para 
confere.push(apostas[b]);

Obrigado Felipe, era isso mesmo.

Jóia amigo. Conseguiu mesmo? até logo. Qualquer coisa posta ai que o pessoal ajuda;) até logo!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software