const mediaNota = (nota1, nota2) => (nota1 + nota2) / 2;
console.log(mediaNota(9, 6).toFixed(2));
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!
const mediaNota = (nota1, nota2) => (nota1 + nota2) / 2;
console.log(mediaNota(9, 6).toFixed(2));
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:
(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!