Jump to content
  • 0
Marcos Bustamante

Transformar letras do alfabeto em numeros e somar

Question

Olá, preciso de uma ajudinha!

Quero transformar letras de a-z em numeros de 1 a 9 e obter a soma destes números até que seja reduzido a um unico número. Por exemplo: o c=3, a=1, s=1, a=1 assim: casa= 3+1+1+1=5 ou outro exemplo: a palavra árvore. a=1, r=9, v=4, o=6, r=9, e=5 o resultado será 34. 3+4=7. Alguém pode me ajudar a fazer isto em javascript?

Share this post


Link to post
Share on other sites

5 answers to this question

Recommended Posts

  • 0

A=1 , B =2 ....I=9 , j=10 >> , j=1 , k =11 >> k = 2

Isto ?

Share this post


Link to post
Share on other sites
  • 0

No seu primeiro exemplo S = 1 e A = 1. É isso mesmo?

 

Ou a ideia é seguir a = 1, b = 2, c = 3, d = 4, e assim por diante?

Share this post


Link to post
Share on other sites
  • 0

Segue um exemplo com valores utilizando o próprio código ascii dos caracteres.

var texto = ("abcZ").toLowerCase();

var total = 0;
for(var i=0; i< texto.length; i++) {
  total = total + (texto[i].charCodeAt() - 96);
}

var somaTotalLetras = function(total) {
  var soma = total.toString();
  if ((total > 10) && (total < 100)) {
    soma = parseInt(soma[0]) + parseInt(soma[1]);
  } else if ((total >= 100) && (total < 1000)) {
    soma = parseInt(soma[0]) + parseInt(soma[1]) + parseInt(soma[2]);
  } else if ((total >= 1000) && (total < 10000)) {
    soma = parseInt(soma[0]) + parseInt(soma[1]) + parseInt(soma[2]) + parseInt(soma[3]);
  }
  
  return soma;
}

document.getElementById("total_letras").innerHTML = total;
document.getElementById("soma_total_letras").innerHTML = somaTotalLetras(total);
<span id="total_letras"></span>
<span id="soma_total_letras"></span>

Faça as modificações de acordo com a sua necessidade. Pelo que vi você pode criar 9 vetores com três posições ocupadas, ou uma matriz. Cada letra ficará em um índice do vetor.

Qualquer dúvida poste aqui.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.