Pages

martes, 1 de enero de 2013

Algoritmo para Convertir Numeros a Letras Codigo en Python

Problema
Ingrese un número y convierta a letras.
Solución
Esta solución solo acepta números que van desde el número cero al noventa y nueve, donde el usuario ingresa un numero decimal y la aplicación retornara como respuesta dicho número en letras.
Ejemplo
  • Entrada: 35
  • Salida:  treinta y cinco.
    
import math
unidades = ["cero", "uno", "dos" ,"tres" ,"cuatro" ,"cinco" ,
            "seis" ,"siete" ,"ocho" ,"nueve","diez"]
especiales = ["once", "doce","trece","catorce", "quince",
              "diezciseis", "diecisiete", "dieciocho", "diecinueve"]
decenas = ["veinte", "treinta","cuarenta","cincuenta", "sesenta",
           "setenta", "ochenta", "noventa"]

#El dato ingresado lo convierte a entero y lo almacena en la variable num
num = int(raw_input("Ingrese un numero entre 0-99: "))

if (num >=0 and num <11):
    print unidades[num]

elif (num < 20):
    print especiales[num-11]

elif (num <100):
    
    unid = num% 10;
    #math.floor -> obtiene la parte entera de la division num/10
    #luego ese resultado lo convertimos a entero, 
    dec = int(math.floor(num/10))
    if (unid == 0):
        print decenas[dec-2] 
    else:
        print decenas[dec-2], "y" , unidades[unid]
else:
    print "El numero debe ser menor a 100"

5 comentarios:

wilson lazo rojas dijo...

esta paguina es una basura y no enseña ni mierda asi que mejor ahorrense sus comentarios

Anónimo dijo...

y si es un numero de 3 cifras

Anónimo dijo...

no hay para 3 digitos? necesito urgente

jesus vega cares dijo...

q ignorante eres wilson

Anónimo dijo...

si wilson eres un animal esto esta de lujo!! y si te cres superior has algo mejor!

Publicar un comentario en la entrada