1
resposta

[Projeto] Mão na massa: proteção na entrada de valores

if (de > ate || quantidade > (ate - de)){
    alert('Por favor, veja se voce inseriu os numeros corretamente.')
    reiniciar();
    alterarClasse();
}
else{
for (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').innerHTML = `<label class="texto__paragrafo">Números sorteados:  ${sorteados.sort(compararNumeros)}</label>`;
    alterarClasse();
}
}
1 resposta

Olá Cesar!

Pelo que você descreveu e o código que compartilhou, parece que você já está no caminho certo para implementar a proteção na entrada de valores. O seu if verifica se o valor de "de" é maior que "ate" ou se a quantidade é maior do que a diferença entre "ate" e "de", o que é uma ótima abordagem.

Vamos revisar o seu código e garantir que ele esteja funcionando conforme o esperado:

if (de > ate || quantidade > (ate - de)) {
    alert('Por favor, veja se você inseriu os números corretamente.');
    reiniciar();
    alterarClasse();
} else {
    for (let i = 0; i < quantidade; i++) {
        let numero = obterNumeroAleatorio(de, ate);

        while (sorteados.includes(numero)) {
            numero = obterNumeroAleatorio(de, ate);
        }

        sorteados.push(numero);
        document.getElementById('resultado').innerHTML = `<label class="texto__paragrafo">Números sorteados:  ${sorteados.sort(compararNumeros)}</label>`;
        alterarClasse();
    }
}

Aqui estão alguns pontos para garantir que tudo esteja funcionando corretamente:

  1. Verificação de valores: O seu if está correto. Ele verifica se "de" é maior que "ate" e se a quantidade é válida.
  2. Reiniciar e alterarClasse: Certifique-se de que as funções reiniciar() e alterarClasse() estão definidas e funcionando corretamente.
  3. Laço for e while: O laço for e o while estão bem implementados para garantir que os números sorteados sejam únicos.
  4. Atualização do resultado: A linha que atualiza o innerHTML do elemento com id resultado está correta.

Se mesmo após essas verificações o problema persistir, verifique se os valores de "de", "ate" e "quantidade" estão sendo capturados corretamente dos campos de entrada.

Espero ter ajudado e bons estudos!