1
resposta

[Projeto] Resolvido

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;
    
    if (de >= ate) {
        alert ('Erro | O número de início precisa ser menor que o máximo!');
        document.getElementById ('quantidade').value = '';
        document.getElementById ('de').value = '';
        document.getElementById ('ate').value = '';
    } else { 

    for(let i = 0; i < quantidade; i++) {
        numero = obterNumeroAleatorio (de, ate);
        while (sorteados.includes(numero)){
            numero = obterNumeroAleatorio (de, ate);
        }
        sorteados.push(numero);
    }
    let resultado = document.getElementById ('resultado');
    resultado.innerHTML = `<label class="texto__paragrafo">Números sorteados: ${sorteados}</label>`;
}
}

Consegui resolver dessa forma.

1 resposta

Oi Gabriel,

Parabéns pela solução do projeto! 👏

Seu código está bem estruturado e cumpre o objetivo de sortear números únicos dentro de um intervalo definido pelo usuário.

A lógica para evitar números repetidos usando while (sorteados.includes(numero)) é eficiente. 👍

Para saber mais: Documentação sobre o método includes() em arrays JavaScript.

Continue praticando e explorando novas soluções! 💻