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!

1
resposta

Calculando média das notas

const mediaNota = (nota1, nota2) => (nota1 + nota2) / 2;
    console.log(mediaNota(9, 6).toFixed(2));

1 resposta

Olá, Alan. Como vai?

Mais uma excelente solução utilizando as Arrow Functions! Você aplicou uma sintaxe enxuta e muito direta para resolver o cálculo da média. Outro ponto super positivo foi o uso do método .toFixed(2) no console.log(), garantindo que o resultado final seja exibido com duas casas decimais, o que é uma ótima prática de formatação.

Gostaria de aproveitar o seu código para destacar um detalhe matemático e de sintaxe que você acertou em cheio, mas que costuma derrubar muitas pessoas que estão começando:

  • A precedência dos operadores (Parênteses): Você colocou corretamente a soma das notas entre parênteses (nota1 + nota2). Na ordem de precedência matemática do JavaScript, a divisão / tem prioridade sobre a adição +. Se você tivesse escrito nota1 + nota2 / 2, o JavaScript primeiro dividiria a nota2 por 2 e depois somaria o resultado à nota1, gerando um cálculo totalmente errado.

Pensando em como levar essa função para um próximo nível de boas práticas e cenários reais (onde podemos ter mais de duas notas), uma excelente evolução seria reescrever essa lógica usando o parâmetro Rest (...). Isso permite que a sua função receba uma quantidade infinita de notas dentro de uma lista (array) e calcule a média automaticamente, sem que você precise criar variáveis como nota3, nota4, etc.

Veja que legal como ficaria essa implementação mais dinâmica:

// Função que calcula a média de qualquer quantidade de notas recebidas
const calcularMediaDinamica = (...notas) => {
    // Reduz a lista somando todos os valores dela
    const somaTotal = notas.reduce((acumulador, nota) => acumulador + nota, 0);
    return somaTotal / notas.length;
};

// Agora você pode passar quantas notas quiser!
console.log(calcularMediaDinamica(9, 6).toFixed(2));       // Retorna 7.50 (2 notas)
console.log(calcularMediaDinamica(10, 8, 7.5, 9).toFixed(2)); // Retorna 8.63 (4 notas)

Dominar o uso dos operadores e entender a ordem de execução do JavaScript é o que garante que suas funções de lógica no Front-end sejam sempre confiáveis e seguras. Parabéns pelo empenho nos desafios!

Espero que possa ter lhe ajudado!