Skip to content

Instantly share code, notes, and snippets.

@JorgeMadson
Created September 5, 2018 18:43
Show Gist options
  • Save JorgeMadson/fa1aa8b8b1c43b34e271d71b81df0226 to your computer and use it in GitHub Desktop.
Save JorgeMadson/fa1aa8b8b1c43b34e271d71b81df0226 to your computer and use it in GitHub Desktop.
Gera numeros para preenchimento de palettes de jogos da Guilda
// 1- Gera um numero random
// 2- Ve se é valido (ñ é um dos excluidos)
// 3- Soma com os outros é igual ao valor final ?
// 4- Soma é possível com os números válidos ?
// Não -> Repete
// Sim -> Fim
// 😂
//Entrada da soma total
var numSoma = prompt("Insira o total da soma: ", 15);
var total = 0;
//Array de numeros;
var arrayDeNumGerados = [];
//Gera um numero entre 1 e Soma total
var numeroBanido = Math.floor((Math.random() * numSoma) + 1);
console.log('numeroBanido:',numeroBanido);
//Gera um numero valido
function geraNumero(numeroBanido) {
var numGerado = Math.floor((Math.random() * numSoma) + 1);
console.log('numGerado:',numGerado);
if (numGerado === numeroBanido) {
return geraNumero(numeroBanido);
}
if (total + numGerado > numSoma) {
return geraNumero(numeroBanido);
}
return numGerado;
}
while (total < numSoma) {
console.log('total:',total);
var tamanhoDoArray = arrayDeNumGerados.push(geraNumero(numeroBanido));
console.log('dentro do while:',arrayDeNumGerados[tamanhoDoArray-1]);
total += arrayDeNumGerados[tamanhoDoArray-1];
}
document.write("Soma total:" +numSoma +"<br>Numero banido:"+ numeroBanido +"<br>Numeros gerados foram: " + arrayDeNumGerados.map(function(valor){
return valor;
}));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment