Nesta versão, o usuário possui interface para inserir as duas notas.
import { createInterface } from "readline";
const rl = createInterface({
input: process.stdin,
output: process.stdout,
});
const calcularMedia = (nota1, nota2) => {
return (nota1 + nota2) / 2;
};
const validarNota = (nota) => {
if (Number.isNaN(nota) || nota < 0 || nota > 10) {
console.log("Insira uma nota válida.");
return null;
}
return nota;
};
rl.question("Insira a primeira nota:\n> ", (input) => {
const nota1Valida = validarNota(Number(input));
if (nota1Valida === null) {
rl.close();
return;
}
rl.question("Insira a segunda nota:\n> ", (input) => {
const nota2Valida = validarNota(Number(input));
if (nota2Valida === null) {
rl.close();
return;
}
console.log(`Média: ${calcularMedia(nota1Valida, nota2Valida)}`);
rl.close();
});
});