Dados repetidos na Array

3 respostas Resolvido
programação
J

Boa tarde!

Estou tentando escrever um algoritmo, em JavaScript, que gere 6 números aleatórios no intervalo de 1 até 60. Os números gerados devem popular uma array, de forma que não haja números repetidos. Já revisei o algoritmo várias vezes, fiz teste de mesa, verificando os valores das variáveis em cada etapa, mas, ainda assim, continuo, eventualmente, tendo números repetidos na array. Alguém pode dar uma luz? Segue meu código:

var numerosSorteados = []; var numeroRepetido = 0; for(var i = 0; i < 6; i++){ var numero = Math.round(Math.random() * 60); while(numero == 0) { numero = Math.round(Math.random() * 60); } for(i2 = 0; i < numerosSorteados.length; i2++){ if(numerosSorteados[i2] == numero){ i--; numeroRepetido = 1; break; } } if(numeroRepetido != 1) { numerosSorteados.push(numero); } numeroRepetido = 0; } console.log(numerosSorteados);

3 Respostas

S

Esse tópico do stackoverflow dá alumas opções de como fazer isso.

J

Vou lá conferir! Obrigado! E desculpem pelo código sem formatação. Primeira vez postando aqui.

J
Solucao aceita

Boa tarde! O Adriano Almeida me ajudou a solucionar. O problema foi o nome da variável que testava a condição do segundo FOR: deveria ser i2, mas eu coloquei i.

Obrigado pessoal!

Criado 23 de setembro de 2018
Ultima resposta 24 de set. de 2018
Respostas 3
Participantes 2