1
resposta

[Projeto] Projeto Ingresso Online - Hora da prática

  • Adicione uma verificação para garantir que a quantidade inserida pelo usuário seja um número positivo. Se o valor não for válido, exiba uma mensagem de erro adequada.
// recuperar as informações: tipo de ingresso e quantidade
function comprar() {
    let tipoIngresso = document.getElementById('tipo-ingresso');
    let quantidade = document.getElementById('qtd').value;

    // realizar verificação: quantidade inserida deve ser um número positivo
    if (isNaN(quantidade) || quantidade <=0) {
        alert ('Insira uma quantidade válida.');
        return;
    }

    // realizar verificação: qual tipo de ingresso está sendo comprado
    if (tipoIngresso.value == 'pista') {
        comprarPista(quantidade);
    } else if (tipoIngresso.value == 'superior') {
        comprarSuperior(quantidade);
    } else {
        comprarInferior(quantidade);
    }

}

// criar funções para cada tipo de ingresso que decremente a quantidade comprada do total

function comprarPista(quantidade) {
    let qtdPista = parseInt(document.getElementById('qtd-pista').textContent);
    if(quantidade > qtdPista) {
        alert ('Quantidade indisponível.');
    } else {
        qtdPista = qtdPista - quantidade;
        document.getElementById('qtd-pista').textContent = qtdPista;
        alert('Compra realizada com sucesso!');
    }
}

function comprarSuperior(quantidade) {
    let qtdSuperior = parseInt(document.getElementById('qtd-superior').textContent);
    if(quantidade > qtdSuperior) {
    alert ('Quantidade indisponível.');
    } else {
        qtdSuperior = qtdSuperior - quantidade;
        document.getElementById('qtd-superior').textContent = qtdSuperior;
        alert('Compra realizada com sucesso!');
    }
}

function comprarInferior(quantidade) {
    let qtdInferior = parseInt(document.getElementById('qtd-inferior').textContent);
    if(quantidade > qtdInferior) {
    alert ('Quantidade indisponível.');
    } else {
        qtdInferior = qtdInferior - quantidade;
        document.getElementById('qtd-inferior').textContent = qtdInferior;
        alert('Compra realizada com sucesso!');
    }
}
  • Crie uma função que aceite uma string como parâmetro, utilize a função parseInt para converter essa string em um número inteiro e retorne o resultado.
function converterString(numEscolhido) {
    let numeroInteiro = parseInt(numEscolhido);
    console.log (numeroInteiro);
}

converterString('50')
  • Escreva um programa de calculadora simples com funções separadas para adição, subtração, multiplicação e divisão. Utilize um bloco condicional para determinar qual função executar com base em uma variável que representa a operação desejada.
function somar(num1, num2) {
    return num1 + num2;
}

function subtrair (num1, num2) {
    return num1 - num2;
}

function multiplicar(num1, num2) {
    return num1 * num2;
}

function dividir(num1, num2) {
    return num1 / num2;
}

function calculadora(operacao, num1, num2) {
    switch (operacao) {
        case 'soma':
            return somar(num1, num2);
        case 'subtracao':
            return subtrair(num1, num2);
        case 'multiplicacao':
            return multiplicar(num1, num2);
        case 'divisao':
            return dividir(num1, num2);
        default:
            return "Operação inválida.";
    }   
}

let resultado = calculadora('divisao', 10, 5);
console.log(resultado);
  • Implemente uma função que aceite um número como parâmetro e utilize um bloco condicional para determinar se o número é par ou ímpar.
function verificarNumero(numero) {
    if (numero % 2 === 0) {
        return "par"
    } else {
        return "ímpar"
    }
}

let numero = 5;
let resultado = verificarNumero(numero);
console.log(` O número ${numero} é ${resultado}.`);
  • Crie uma função que converta a temperatura de Celsius para Fahrenheit e vice-versa. Utilize uma variável para indicar a escala desejada e um bloco condicional para determinar qual conversão realizar
// função para converter celsius para fahrenheit
function fahrenheit(temperatura) {
    let resultadoF = (temperatura * 1.8) + 32;
    console.log(`${temperatura}°C é igual a ${resultadoF.toFixed(1)}°F`);
    return resultadoF;
}

// função para converter fahrenheit para celsius
function celsius(temperatura) {
    let resultadoC = (temperatura - 32) / 1.8;
    console.log(`${temperatura}°F é igual a ${resultadoC.toFixed(1)}°C`);
    return resultadoC;
}

//função para indicar a escala desejada e determinar qual conversão realizar
function conversao(operacao, temperatura) {
    switch (operacao) {
        case 'fahrenheit':
            return fahrenheit(temperatura);
        case 'celsius':
            return celsius(temperatura);
    }   
}

let resultado = conversao('fahrenheit', 35);
console.log(resultado); // result: 35°C é igual a 95.0°F

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Oii, Aline.

Gostei do seu código, ele tá bem estruturado e demonstra boa compreensão sobre validação de dados e uso de condicionais em JavaScript. A verificação para garantir números positivos tá correta e contribui para evitar erros de entrada do usuário.

Continue praticando e aprimorando sua lógica, é ótimo ver seu progresso nos desafios.

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