Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Projeto Sorteador de Números [final]

Após assistir as aulas, realizar os exercícios propostos e ler várias dicas no fórum eu consegui chegar nesse resultado do projeto Sorteador de Números e e fico feliz em poder compartilhar.

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

    if (de >= ate) {
        alert(`Você colocou o número ${de} no campo "Do número" sendo maior que o número ${ate} no campo "Até o número", portanto o jogo será reiniciado!`);
        reiniciar();
        alterarStatusBotao();
        return;
    }

    if (quantidade > (ate - de + 1)) {
        alert(`Quantidade de número solicitado ${quantidade} é maior que o intervalo entre ${de} e ${ate}, escolha outro valor. O jogo será reiniciado!`);
        reiniciar();
        alterarStatusBotao();
        return;
    }

    let sorteados = [];
    let numero;

    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');
    let palavraNumerosSorteados = quantidade > 1 ? 'Números sorteados' : 'Número sorteado';
    resultado.innerHTML = `<label class="texto__paragrafo">${palavraNumerosSorteados}: ${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();
}
1 resposta
solução!

Oi, Nayara! Tudo bem?

Excelente código, parabéns pelo projeto! Espero que esteja gostando do curso! Colocar em execução as atividades propostas pelo professor em aula é uma prática muito importante para internalizarmos o conteúdo. Caso tenha ficado alguma dúvida em relação ao curso ou atividade, sinta-se à vontade em comunicar, estou à disposição e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software