<meta charset="UTF-8">
<h1>Mini Sena</h1>
<script>
function pulaLinha() {
document.write("<br>");
}
function mostra(frase) {
document.write(frase);
pulaLinha();
}
//=================================================================
mostra("Vou sortear 10 números aleatórios não-repetidos.");
mostra("Você apostará até 10 números de 1 a 20 sem repetição.");
mostra("Será que sua aposta será vencedora?");
//=================================================================
// SORTEIO DE 10 NÚMEROS NÃO REPETIDOS
//=================================================================
function sorteia() { return Math.round(Math.random() * 20); } //Gera n* randômico
function sorteiaNumeros(quantidade) { // LOOP para incluir os 20 n* sem repetição
var segredos = []; //ARRAY, memoriza os n*
var numero = 1; // Contador, 10 sorteios entre 1 e 20
while(numero <= 10) { // Faça até que atinja 10
var numeroAleatorio = sorteia();
var achou = false;
if (numeroAleatorio !== 0) {
for(var posicao = 0; posicao < segredos.length; posicao++) {
if(segredos[posicao] == numeroAleatorio){
achou = true;
break;
}
}
if (achou == false) {
segredos.push(numeroAleatorio);
numero++;
}
}
}
return segredos;
}
var segredos = sorteiaNumeros(10); //Solitica o sorteio de 10 números
//------------------------------------------------------------------
//LOOP para entrada de n apostas sem repetição
//------------------------------------------------------------------
var apostas = [];
var quantidadeApostas = parseInt(prompt("Quantas apostas você vai adicionar? Máx. 10 apostas"));
pulaLinha;
if (quantidadeApostas >10) { (quantidadeApostas = 10);
prompt("A quantidade máxima de apostas será 10"); }
if (quantidadeApostas < 1) { (quantidadeApostas = 1);
prompt("A quantidade mínima de apostas será 1"); }
pulaLinha;
mostra(" A quantidade de apostas foi "+quantidadeApostas);
var contador = 0;
while( contador <= (quantidadeApostas-1))
{
var nAposta = prompt("Informe a aposta n* " + (1+contador)+" de "+quantidadeApostas);
var jaExiste = false; // false indicará se o n* digitado é inexistente
for( var posicao = 0; posicao < quantidadeApostas; posicao++)
{
if(nAposta==apostas[posicao]) {jaExiste=true;prompt("Aposta não pode ser repetida. Clique OK para inserir outro valor");break;}
if(nAposta >20) {jaExiste=true;prompt("Aposta não pode ser maior que 20. Clique OK para inserir outro valor");break;}
if(nAposta <1) {jaExiste=true;prompt("Aposta não pode ser menor que 1. Clique OK para inserir outro valor");break;}
}
if( jaExiste == false) { apostas.push(nAposta); contador++; }
}
//-----------------------------------------------------
// COMPARAR SEGREDOS COM APOSTAS
//-----------------------------------------------------
var acertos = []; //novo ARRAY, memoriza os n* acertados
var posicaoAcerto = 0; // Contador dos 20 números sorteados
while(posicaoAcerto < segredos.length){// Faça a comparação até que atinja os 20 números sorteados(0a19)
var match = false; //true, caso coincida aposta com número sorteado
for(var pos = 0; pos < apostas.length; pos++) {
if(apostas[pos]==segredos[posicaoAcerto]){
match = true;
acertos.push(segredos[posicaoAcerto]);}
}
posicaoAcerto++;
} //Fecha while
//Bloco para amostragem de resultados
pulaLinha();
mostra("Números sorteados");
for(var olhaossegredos = 0; olhaossegredos<segredos.length; olhaossegredos++) {
document.write(".."+segredos[olhaossegredos]+"..");
}
document.write("<br><br>");
mostra("Números apostados");
for(var olhaasapostas = 0; olhaasapostas<apostas.length; olhaasapostas++) {
document.write(".."+apostas[olhaasapostas]+"..");
}
document.write("<br><br>");
if(acertos.length>0) {
for(var contar=0;contar<acertos.length;contar++) {
mostra("Acerto n* "+(contar+1)+" = "+acertos[contar]);}
}
if(acertos.length<=0) { mostra("Não houve acertos");}
</script>