Boa noite,
Apliquei a proteção no intervalo, conforme sugerido pelo instrutor, porém, quando faço o teste colocando Quantidade de números 5, de 10 até 14, nada acontece após eu clicar em executar.
Abaixo segue o código completo:
function sortear(){
let quantidade = parseInt(document.getElementById('quantidade').value); // paga o VALOR inserido no campo 'Quant de Números'. Tem que usar parseint senão ele devolve uma str.
let de = parseInt(document.getElementById('de').value); // paga o VALOR inserido no campo 'do número'.
let ate = parseInt(document.getElementById('ate').value); // paga o VALOR inserido no campo 'até o numero'
if (de >= ate) {
alert('Campo "Do número" deve ser inferior ao campo "Até o número". Verifique!');
return;
}
if (quantidade > (ate - de + 1)) {
alert('Campo "Quantidade" deve ser menor ou igual ao intervalo informado no campo "Do número" até o campo "Até o número". Verifique!');
return;
}
let sorteados = []; // lista vazia a ser preenchida com os numeros sorteados
let numero; // variável de controle
for (let i = 0; i < quantidade; i++) { // enquanto i for menor que quantidade digitada pelo usuário repita o loop
numero = obterNumeroAleatorio(de, ate);
while (sorteados.includes(numero)) { // loop para verificar se o número sorteado já consta na lista SORTEADOS. esse INCLUDES retorna True ou False. Então, enquanto for verdadeiro (ou seja, o núm sorteado já está na lista SORTEADOS) o código rodará o while e sorteará outro núm.
numero = obterNumeroAleatorio(de, até);
}
sorteados.push(numero); // método de inserção do numero sorteado na lista
}
let resultado = document.getElementById('resultado');
resultado.innerHTML = `<label class="texto__paragrafo">Números sorteados: ${sorteados}</label>`
alterarStatusBotao();
}
function obterNumeroAleatorio(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>';
alterarStatusBotao();
}
Será que alguém saberia onde está o erro?
Desde já agradeço.