Fala pessoal, blz? Sou novo aqui e, desde já, agradeço qualquer ajuda. Sou novato em js.
Estou estundando e trabalhando em um projeto pessoal.
Preciso calcular os numeros de uma milhar, por exemplo: Milhar = 4236 Resultado: 4 + 2 + 3 + 6 = 15
alguém consegue ajudar?
JS somar unidade de uma milhar
Moderador: Moderadores Fluig
-
- Fluig Bebê
- Mensagens: 1
- Registrado em: 19 Mar 2019 19:39
Re: JS somar unidade de uma milhar
Na verdade é bem simples. Segue lógica aplicada a JavaScript
O resultado impresso no console será:
4 é Unidade de milhar
2 é Centena
3 é Dezena
6 é Unidade
O resultado é: 15
Código: Selecionar todos
/**
* Vamos desenvolver uma função para apresentar no console as interações
* @param {*} params é esperado é número que vai ser usado como base
* @returns retorna a soma das unidades
*/
const calcularAlgarismos = (params) => {
/** Primeiro vamos converter o número em uma string para contar a quantidade de casas */
let toText = String(params);
/** Definir uma variavel para somar os valores */
let somaUnidade = 0;
/** Vamos interragir com a string */
for (let index = 0; index < toText.length; index++) {
const element = toText[index];
/** Somando de fato os números */
somaUnidade = somaUnidade + parseInt(toText[index]);
/** Usamos um pouco de lógica para inveter o calculo e acertamos a posição do número */
console.log(element + " é " + definicaoAlgarismo(toText.length - index))
}
console.log("O resultado é: " + somaUnidade);
return somaUnidade;
}
/**
* Função para retornar a descrição da unidade com base na posição do número.
* @param {*} param recebe a posição
* @returns o texto descritivo
*/
const definicaoAlgarismo = (param) => {
let texto;
switch (param) {
case 1: texto = "Unidade"; break;
case 2: texto = "Dezena"; break;
case 3: texto = "Centena"; break;
case 4: texto = "Unidade de milhar"; break;
case 5: texto = "Dezena de milhar"; break;
case 6: texto = "Centena de milhar"; break;
case 7: texto = "Milhão"; break;
}
return texto;
}
/**
* Chamando a função
*/
calcularAlgarismos(4236)
O resultado impresso no console será:
4 é Unidade de milhar
2 é Centena
3 é Dezena
6 é Unidade
O resultado é: 15