domingo, 30 de outubro de 2011

Problema 4.2

O problema do cálculo do valor numérico associado a um nome formado por uma única palavra não levanta dificuldades de maior. O padrão habitual -- ciclo, contador e acumulador, chega para resolver a questão. Devido à natureza do problema vamos percorrer a cadeia de caracteres pelo seu conteúdo, pelo que a contagem é implícita. Atente-se no modo como conseguimos estabelecer a relação entre cada caractere e o seu valor numérico. Só precisamos saber o que faz a função ord e não qual o valor no código ASCII associado a cada caractere.
def valor_numerico(nome):
""" Calcula o valor numérico de um nome. 'a' = 1, ..., 'z' = 26."""
valor = 0
for car in nome:
valor = valor + (ord(car) - ord('a') + 1)
return valor

Sem comentários:

Enviar um comentário