1
resposta

É possível usar uma única função

function comprar() {
    let tipoIngresso = document.getElementById('tipo-ingresso').value;
    let quantidadeComprada = parseInt(document.getElementById('qtd').value);

    let qtdPista = document.getElementById('qtd-pista');
    let qtdSuperior = document.getElementById('qtd-superior');
    let qtdInferior = document.getElementById('qtd-inferior');

    if (tipoIngresso === 'pista') {
        let qtdAtual = parseInt(qtdPista.innerText);
        if (quantidadeComprada <= qtdAtual) {
            qtdPista.innerText = qtdAtual - quantidadeComprada;
            alert("Compra realizada com sucesso!");
        } else {
            alert("Quantidade de ingressos insuficiente!");
        }
    } else if (tipoIngresso === 'superior') {
        let qtdAtual = parseInt(qtdSuperior.innerText);
        if (quantidadeComprada <= qtdAtual) {
            qtdSuperior.innerText = qtdAtual - quantidadeComprada;
            alert("Compra realizada com sucesso!");
        } else {
            alert("Quantidade de ingressos insuficiente!");
        }
    } else if (tipoIngresso === 'inferior') {
        let qtdAtual = parseInt(qtdInferior.innerText);
        if (quantidadeComprada <= qtdAtual) {
            qtdInferior.innerText = qtdAtual - quantidadeComprada;
            alert("Compra realizada com sucesso!");
        } else {
            alert("Quantidade de ingressos insuficiente!");
        }
    }
}
1 resposta

Olá Arthur! Tudo bem?

Sim, é possível refatorar o seu código para usar uma única função, tornando-o mais enxuto e evitando a repetição de lógica. Que bacana que você está pensando em diferentes formas de criar seus códigos, isso significa que está realmente aprendendo e aumentando seu repertório. Parabéns pela dedicação!

Obrigada por compartilhar sua versão do código com a gente. Conte sempre com o apoio do fórum!

Um abraço e bons estudos!