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

[Dúvida] Duvida sobre o codigo.

Eu fiz um pouco diferente do gabarito e funcionou, queria saber se dessa forma que eu fiz teria algum problema ou seria inferior do que a do gabarito.

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){
        reiniciar();
        sorteados = [];
        alert('O número minimo não pode ser maior que o número maximo');
    } 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>`;

}

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!

Olá, João! Tudo bem?

Analisando seu código, percebo que você implementou a proteção corretamente para evitar que o valor mínimo seja maior que o valor máximo. Isso é feito por meio do bloco if (de > ate), que reinicia o processo caso essa condição seja verdadeira e emite um alerta para o usuário. Isso está totalmente correto e segue a lógica proposta na atividade.

A diferença para o gabarito pode estar em outros aspectos do código, como você manipula o DOM ou a lógica de sorteio dos números. No entanto, se o seu código está funcionando como esperado e não apresenta erros, isso é o mais importante.

Existem muitas maneiras de resolver um problema em programação e o fato de você ter encontrado uma solução diferente do gabarito não significa que a sua está errada ou é inferior.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.