Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Lógica de programação fatorando o resultado final com dois dígitos para obter um com somente um digito.

Boa noite!, Eu preciso fazer uma função que some algarismos com mais de dois dígitos e formem um numero natural, gostaria de saber se existe algum código que faria isso e como posso fazer. Exemplo - 10 + 5 = 15 = 1+5 = 6 a questão seria fazer essa fatoração do resultado final (1+5) e obter um novo resultado, estou programando em JS, mas qualquer dica em uma outra linguagem já me será útil.

Obrigado desde já!

3 respostas
solução!

Boa noite, Felipe! Como vai?

Vc pode transformar o seu número para string, quebrar ele com split() e somar os valores de cada dígito dessa forma:

function somaAlgarismos(numero) {
     let numeroString = numero+'';
     let algarismos = numeroString.split('');

     let soma = 0;
     for (let i = 0; i < algarismos.length; i++) {
          soma += parseInt(algarismos[i]);
     }

     return soma;
}

Grande abraço e bons estudos!

Muito obrigado! Conversando com um amigo cheguei a pensar em fazer o seguinte - int dezena = resultado/10; Int unidade = resultado%10; Int soma = dezena + unidade; mas dessa forma que descreve é muito mais simples e não tem como dar um resultado alterado, já que vai transformar o numero em string. Muito obrigado!

O problema dessa solução da divisão é que quanto mais algarismos o seu número tiver mais divisões terá que fazer.

Com o split() tudo se resolve facilmente e com perfeição!

Grande abraço e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software