1
resposta

[Projeto] Resolução do primeiro desafio.

Boa noite! Eu coloquei algumas coisas diferentes no projeto, como uma validação dos inputs. Além disso, usei uma forma diferente para trocar o tipo de classe do botão reiniciar.

function validarEntradas() {
  let quantidade = parseInt(document.getElementById("quantidade").value);
  let minimo = parseInt(document.getElementById("de").value);
  let maximo = parseInt(document.getElementById("ate").value);

  if (isNaN(quantidade) || isNaN(minimo) || isNaN(maximo)) {
    alert("Por favor, preencha todos os campos corretamente.");
    return false;
  }

  if (quantidade <= 0 || minimo >= maximo) {
    alert("Por favor, insira valores válidos.");
    return false;
  }

  return true;
}

function sortear() {
  if (!validarEntradas()) {
    return;
  }

  let quantidade = parseInt(document.getElementById("quantidade").value);
  let minimo = parseInt(document.getElementById("de").value);
  let maximo = parseInt(document.getElementById("ate").value);
  let numerosSorteados = [];

  for (let i = 0; i < quantidade; i++) {
    let numeroAleatorio = geraNumeroAleatorio(minimo, maximo);

    while (numerosSorteados.includes(numeroAleatorio)) {
      numeroAleatorio = geraNumeroAleatorio(minimo, maximo);
    }

    numerosSorteados.push(numeroAleatorio);
  }

  exibirResultado("resultado", numerosSorteados);
  habilitarBotao("btn-sortear", "container__botao-desabilitado");
  habilitarBotao("btn-reiniciar", "container__botao");
}

function exibirResultado(tag, valor) {
  let resultado = document.getElementById(tag);
  resultado.innerHTML = `<label class="texto__paragrafo">Números sorteados:  ${valor.join(
    ", "
  )}</label>`;
}

function reiniciar() {
  document.getElementById("quantidade").value = "";
  document.getElementById("de").value = "";
  document.getElementById("ate").value = "";
  resultado.innerHTML = `<label class="texto__paragrafo">Números sorteados: nenhum até agora</label>`;
  habilitarBotao("btn-reiniciar", "container__botao-desabilitado");
  habilitarBotao("btn-sortear", "container__botao");
}

function habilitarBotao(tag, value) {
  document.getElementById(tag).className = value;
}

function geraNumeroAleatorio(min, max) {
  return parseInt(Math.random() * (max - min + 1) + min);
}
1 resposta

Olá, Davi! Tudo bem?

Parabéns pelo projeto e iniciativa de incrementá-lo! Obrigada por compartilhar o seu código com a nossa comunidade do fórum do curso, tenho certeza que ajudará muitos colegas que possam estar sentindo dúvidas! Caso tenha ficado alguma dúvida em relação a algum conteúdo do curso ou atividade, fique a vontade para expor, estou à disposição e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!