1
resposta

Resolvi o problema.

function sortear () {
    let quantidade = parseInt(document.getElementById('quantidade').value);
    let de = parseInt(document.getElementById('de').value);
    let ate = parseInt(document.getElementById('ate').value);

    let sorteados = [];
    let numero;

    for(let i = 0; i < quantidade; i++){
        numero = obterDoNumeroAleatorio(de, ate);
        
        while(sorteados.includes(numero)){
            numero = obterDoNumeroAleatorio(de, ate);
        }

        sorteados.push(numero);
    }

    if (quantidade > 25 || de > 75 || ate > 100) {
        alert(`O número máximo permitido para quantidade é 25. Do número 1 à 75. Até o número 1 à 100.`);
        reiniciar();
    }
    else 
    {
    let resultado = document.getElementById('resultado');
    resultado.innerHTML = `<label class="texto__paragrafo"> Números sorteados:  ${sorteados} </label>`;
}
}

function obterDoNumeroAleatorio(min, max){
    return Math.floor(Math.random() * (max - min + 1)) + min;
}

function alterarStatusBotao() {
    let botao = document.getElementById('btn-reiniciar');
    if (botao.classList.contains('container__botao-desabilitado')) {
        botao.classList.remove('container__botao-desabilitado');
        botao.classList.add('container__botao');
    } else {
        botao.classList.remove('container__botao');
        botao.classList.add('container__botao-desabilitado');
    }
}

function reiniciar() {
    document.getElementById('quantidade').value = '';
    document.getElementById('de').value = '';
    document.getElementById('ate').value = '';
    document.getElementById('resultado').innerHTML = '<label class="texto__paragrafo">Números sorteados:  nenhum até agora</label>';
}

Resolvi o problema dessa forma é funcionou. Eu acho que também resolvi na questão de muitos números colocado um limite de número é alertado o usuário até que número ele pode coloca.

1 resposta

Oi Diogo,

Parabéns pela solução! 👏

Sua abordagem para limitar a quantidade e o intervalo dos números sorteados está muito boa, e o uso do alert para informar o usuário é uma prática excelente.

O loop while para garantir que não haja números repetidos também está correto e eficiente. 👍

Para saber mais: Documentação sobre tratamento de erros em JavaScript. Este link aborda como lidar com erros em JavaScript, incluindo o uso de try...catch e outras técnicas.

Continue praticando e explorando novas soluções! 🤔