Consegui fazer um sistema de seleção de dificuldades e mais alguns extras.
<meta charset="UTF-8">
<h1>Advinhe o Numero</h1>
<input placeholder="Digite um numero de 0 a 10" >
<button >Enviar</button>
<script>
function dificuldades(select,dificultDispon){
var dificultSelect = dificultDispon[(select) - 1];
var intervaloNum = 10; // definir o limite padrao de escolha do numero
var qtdNum = 2; // Definir o padrão de numeros sorteados
if( dificultSelect == "Muito Difícil"){
intervaloNum = 35;
input.placeholder = "Digite um numero de 0 a 35";
qtdNum = 1
}
if(dificultSelect == "Difícil"){
intervaloNum = 20;
input.placeholder = "Digite um numero de 0 a 20";
qtdNum = 1
}
if(dificultSelect == "Médio"){
intervaloNum = 15;
input.placeholder = "Digite um numero de 0 a 15";
}
if(dificultSelect == "Muito Fácil"){
qtdNum = 4;
}
return dificuldadeInfo = [dificultSelect, intervaloNum, qtdNum];
}
function sorteio(intervalo){
var numSorteado = Math.round(Math.random() * 100);
while(numSorteado > intervalo){
numSorteado = Math.round(Math.random() * 100);
}
return numSorteado
}
function sorteia(intervalo, qtdNum){
var numSorts = [] ;
var sort = 0;
for ( i = 0; i < qtdNum; i++){
sort = sorteio(intervalo);
while(numSorts.includes(sort)){ //lista.includes(item) procura o item na lista e retorna true ou false
sort = sorteio(intervalo);
}
numSorts.push(sort);
}
return numSorts
}
function verificar(){
var numLista = false;
var acerto = "";
var numeroEscolhido = input.value;
input.focus();
if( numeroEscolhido > DificuldadeInfo[1]){
alert("Digite um valor dentro do intervalo de 0 a " + DificuldadeInfo[1]);
input.value = "";
}
if(numeroEscolhido < DificuldadeInfo[1] && numeroEscolhido !=''){
numeros.push(parseInt(numeroEscolhido)); /*adiciona os numeros na lista*/
}
for ( c = 0; c < numSort.length; c++){
if ( numeroEscolhido == numSort[c] ){
if ( erros == 0){
alert("Parabens!! Voce Acertou de primeira!! ");
}else{
alert("Parabens!! Voce Acertou !! Voce errou um total de "+ erros +" veze(s)");
}
numLista = true;
for(i = 0; i <= erros; i ++){ /*Escreve no final as tentativas*/
if( numSort.includes(numeros[i])){
acerto = "Certo => ";
}
document.write("Na Sua "+(i + 1)+"º Tentativa Voce Escolheu o Numero "+acerto+ numeros[i]);
document.write("<br>");
}
document.write("<h3>Numero(s) Pensado(s): " + numSort + "</h3>");
break;
}
}
if ( numLista == false && numeroEscolhido <= DificuldadeInfo[1] && numeroEscolhido !=''){
alert("voce errou. Tente novamente. ");
input.value = "";
input.focus(); /*deixa a caixa de seleção em foco para poder digitar*/
erros++;
}
}
var input = document.querySelector("input");
var botao = document.querySelector("button");
var erros = 0;
var numeros = [];
var dificultDispon = ["Muito Difícil", "Difícil","Médio","Fácil", "Muito Fácil"];
var selectDificult = parseInt(prompt("Selecione uma dificuldade : \n 1 - Muito Dificil | 2 - Difícil | 3 - Médio | 4 - Fácil | 5 - Muito Facil"))
while( selectDificult > 5 || selectDificult == 0 || isNaN(selectDificult) == true ){ // 5 = quantidade de dificuldades
selectDificult = parseInt(prompt("Digite apenas numeros de 1 a 5 :\n 1 - Muito Dificil | 2 - Difícil | 3 - Médio | 4 - Fácil | 5 - Muito Facil")); // valida o selectDificult
}
var DificuldadeInfo = dificuldades(selectDificult,dificultDispon);
var numSort = sorteia(DificuldadeInfo[1],DificuldadeInfo[2]);
var probabilidade = (numSort.length / (DificuldadeInfo[1]+1))*100;
console.log(numSort); // teste array
document.write("<br><br><b>Dificuldade:</b> "+ DificuldadeInfo[0]);
document.write("<br><br><b>Quantidade de Numeros Gerados:</b> "+ DificuldadeInfo[2]);
document.write("<br><b>Chance de acerto:</b> " + probabilidade + "%");
botao.onclick = verificar ;
</script>