Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Ivancamilo en 2 Octubre 2016, 16:47 pm



Título: Ayuda! Como pasar un numero a letras
Publicado por: Ivancamilo en 2 Octubre 2016, 16:47 pm
Hola que tal! Estoy buscando alguna idea o ayuda para hacer un programa en c++ que lea un número de 1 a 10.000.000 y que me escriba  ese mismo número en letras ejemplo
Numero leído: 34945
Resultado: treinta y cuatro mil novecientos cuarenta y cinco
Numero leído: 3.657.291
Resultado: tres millones seiscientos cincuenta y siete mil  doscientos noventa y uno



Título: Re: Ayuda! Como pasar un numero a letras
Publicado por: dato000 en 2 Octubre 2016, 17:32 pm
Hola que tal! Estoy buscando alguna idea o ayuda para hacer un programa en c++ que lea un número de 1 a 10.000.000 y que me escriba  ese mismo número en letras ejemplo
Numero leído: 34945
Resultado: treinta y cuatro mil novecientos cuarenta y cinco
Numero leído: 3.657.291
Resultado: tres millones seiscientos cincuenta y siete mil  doscientos noventa y uno



Claro que se puede, solo tienes que crear una condición en la que por cada numero, decena, centena y millar cambie cada texto.

Código
  1. if( numero == 1)
  2.   printf("uno");
  3. else if( numero == 2)
  4.   print("dos");
  5.  
  6. ...
  7. ..
  8. .
  9.  

suerte con eso amigo, cuando tengas los 10.000.000 de casos nos dejas el código para ver como te fue, sigue con ese impetú amigo. :D :D


Título: Re: Ayuda! Como pasar un numero a letras
Publicado por: _TTFH_3500 en 2 Octubre 2016, 18:01 pm
Solo debes separar los digitos de a 3 (dividiendo por 1000 o hallando el resto de la division entera) y luego volver a separarlos segun la posicion ignorando los ceros (es decir, si el 4 esta al comienzo sería cuatrocientos, cuarenta o cuatro) y continuando con el resto, por ejemplo:

cuarenta y cero
cuarenta y uno
cuarenta y dos


18446744073709551615
dieciocho trillones cuatrocientos cuarenta y seis mil setecientos cuarenta y cuatro billones setenta y tres mil setecientos nueve millones quinientos cincuenta y un mil seiscientos quince