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
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"
14 comentarios:
esta paguina es una basura y no enseña ni mierda asi que mejor ahorrense sus comentarios
y si es un numero de 3 cifras
no hay para 3 digitos? necesito urgente
q ignorante eres wilson
si wilson eres un animal esto esta de lujo!! y si te cres superior has algo mejor!
http://www.lawebdelprogramador.com/foros/Python/297286-Transformar-numeros-a-literales.html
print decenas[dec-2] , en esta parte del codigo no entiendo, me pueden explicar?
Este es un buen ejemplo https://github.com/Axiacore/numero-a-letras/blob/master/python/number_to_letter.py
2 cifras ???? esta de la mierda este post, mejor vete a chupar una verga bien grande antes de hacer este tipo de tutos porqueria, pendejo baboso )(/)(/&&/%/%$%$%$&$·&
me salta error en la linea 13
esta ok falta mejorar, pero vale de base para completar a números de tres, cuatro y mas cifras. buen aporte
dlv
Gracias, le faltan algunos paréntesis y en Python 3 es sólo input, pero funciona bien.
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(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")
Publicar un comentario