Oi, pode me dar uma opinião?
function adicao(numerosParaSomar) {
let numerosSomados = 0;
for (let i = 0; i < numerosParaSomar.length; i++) {
numerosSomados = numerosSomados + numerosParaSomar[i];
}
return numerosSomados;
}
function subtracao(numerosParaSubtrair) {
if (numerosParaSubtrair.length === 0) {
return 0;
}
let numerosSubtraidos = numerosParaSubtrair[0];
for (let i = 1; i < numerosParaSubtrair.length; i++) {
numerosSubtraidos = numerosSubtraidos - numerosParaSubtrair[i];
}
return numerosSubtraidos;
}
function multiplicacao(numerosParaMultiplicar) {
let numerosMultiplicados = 1;
for (let i = 0; i < numerosParaMultiplicar.length; i++) {
numerosMultiplicados = numerosMultiplicados * numerosParaMultiplicar[i];
}
return numerosMultiplicados;
}
function divisao(numerosParaDividir) {
if (numerosParaDividir.length === 0) {
return 0;
}
let numerosDivididos = numerosParaDividir[0];
for (let i = 1; i < numerosParaDividir.length; i++) {
if (numerosParaDividir[i] !== 0) {
numerosDivididos = numerosDivididos / numerosParaDividir[i];
} else {
alert('Não é possível dividir por 0!');
return null;
}
}
return numerosDivididos;
}
function calculadora(operacao, ...listaDeNumeros) {
switch (operacao) {
case 'soma':
return adicao(listaDeNumeros);
case 'subtracao':
return subtracao(listaDeNumeros);
case 'multiplicacao':
return multiplicacao(listaDeNumeros);
case 'divisao':
return divisao(listaDeNumeros);
default:
return "Operação inválida.";
}
}