Here’s a suggestion:
var numeros_ignorados = [13, 10];
var quantidade_de_jogos = 3; // pode mudar a quantidade aqui
var jogos = [];
function gerarNumero(existentes) {
var novoNumero = parseInt(Math.random() * 59, 10) + 1;
if (existentes.indexOf(novoNumero) != -1 || numeros_ignorados.indexOf(novoNumero) != -1) novoNumero = gerarNumero(existentes);
return novoNumero;
}
function chaveExistente(chave) {
var chaves = jogos.map(function (chv) {
return chv.join();
});
return chaves.indexOf(chave.join()) != -1;
}
for (var i = 0; i < quantidade_de_jogos; i++) {
var numeros = [];
while (numeros.length < 6) {
numeros.push(gerarNumero(numeros));
}
numeros = numeros.sort();
chaveExistente(numeros) ? quantidade_de_jogos++ : jogos.push(numeros);
}
alert(JSON.stringify(jogos, null, 4));
I created a function to generate numbers that also checks if the number already exists in the series.
I created another function chaveExistente()
to check if the key has already left.
This code generates an array of arrays. An example is:
[
[14, 21, 24, 32, 44, 50],
[16, 33, 36, 37, 4, 44],
[11, 2, 24, 34, 4, 45]
]
You can try a function like Math.Random(); http://www.w3schools.com/jsref/jsref_random.asp or some other more advanced, like neural network, etc.
– Tony