trabalhobiblioteca
Version:
34 lines (30 loc) • 1.2 kB
JavaScript
const prompt = require("prompt-sync")();
function rolarDados(numDados, numLados, operacao) {
let resultados = [];
for (let i = 0; i < numDados; i++) {
let resultadoDado = Math.floor(Math.random() * numLados) + 1;
resultados.push(resultadoDado);
}
switch (operacao) {
case "somar":
return resultados.reduce((acc, val) => acc + val, 0);
case "subtrair":
return resultados.reduce((acc, val) => acc - val, 0);
case "multiplicar":
return resultados.reduce((acc, val) => acc * val, 1);
case "dividir":
return resultados.reduce((acc, val) => acc / val, 1);
default:
return resultados;
}
}
// Exemplo de uso:
let numDados = parseInt(prompt("Quantos dados você quer rolar?"));
let numLados = parseInt(prompt("Quantos lados tem cada dado?"));
let operacao = prompt(
"Qual operação deseja realizar (somar, subtrair, multiplicar, dividir)?",
);
let resultadoFinal = rolarDados(numDados, numLados, operacao);
console.log(
`Resultado da operação "${operacao}" com ${numDados} dados de ${numLados} lados: ${resultadoFinal}`,
);