Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

2
respostas

minha resolução

meu codigo ficou assim


```let qtdPista = 100;
let qtdSuperior = 200;
let qtdInferior = 400;

function comprar() {
  let ingresso = document.getElementById("tipo-ingresso").value;
  let quantidade = parseInt(document.getElementById("qtd").value) || 0;
  let pistaHtml = document.getElementById("qtd-pista");
  let cadeiraSuperiorHtml = document.getElementById("qtd-superior");
  let cadeiraInferiorHtml = document.getElementById("qtd-inferior");

  if (ingresso === "pista") {
    if (quantidade > qtdPista) {
      alert("Quantidade indisponível para o tipo de ingresso.");
    } else {
      qtdPista = qtdPista - quantidade;
      pistaHtml.textContent = qtdPista;
    }
  } else if (ingresso === "superior") {
    if (quantidade > qtdSuperior) {
      alert("Quantidade indisponível para o tipo de ingresso.");
    } else {
      qtdSuperior = qtdSuperior - quantidade;
      cadeiraSuperiorHtml.textContent = qtdSuperior;
    }
  } else {
    if (quantidade > qtdInferior) {
      alert("Quantidade indisponível para o tipo de ingresso.");
    } else {
      qtdInferior = qtdInferior - quantidade;
      cadeiraInferiorHtml.textContent = qtdInferior;
    }
  }
  document.getElementById("qtd").value = "";
2 respostas

Olá, Reynaldo! Como vai?

Gostei da forma como você organizou a lógica para cada tipo de ingresso utilizando estruturas condicionais. Também chamou atenção o uso de parseInt(...) || 0, que ajuda a evitar problemas caso o campo venha vazio. Sua solução está clara e controla corretamente a atualização das quantidades disponíveis para cada setor.

Uma dica interessante para o futuro é criar uma função para evitar a repetição de código ao validar e atualizar os ingressos. Veja este exemplo:


function atualizarEstoque(quantidade, estoqueAtual) {
  return estoqueAtual - quantidade;
}

Esse código recebe a quantidade comprada e o estoque atual, retornando o novo valor do estoque. Isso ajuda a deixar o código mais organizado e facil de manter.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

top. mt obgdo pela sugestão