Glosario

Un programa que, usando un ROM, simula (o más correctamente, emula) una computadora en otra computadora. Emu48 emula casi completamente una HP4X bajo Windows, permitiendo a uno usar la calculadora en la pantalla de la computadora.

Traductor de Cantidades Númericas a Letras

16 respuestas [Último envío]
Integró: 10/03/2004
Envíos: 41
MonedasHP: 8
Imagen de Orly
Calc: HP49 | ROM:1.19-6
Traductor de Cantidades Númericas a Letras
 
Mié, 27/02/2008 - 13:39

Hola mis queridísimos Amigos AdictosHP!!!!
Les propongo un desafío un poco más complejo. Laughing out loud
El mismo se trata de desarrollar en UserRPL la implementación de un algoritmo que dado un número entero X mayor o igual que cero y menor o igual que 2^32 = 4294967296
(0<= X <= 4294967296)

Traduzca la cantidad númerica representada por X en la cadena de caracteres que corresponda a la pronunciación de las palabras de esa cantidad.

Os pongo un simple ejemplo para que entendais la esencia de éste maravilloso desafío:
Pila antes de ejecutar el programa:

3:
2:
1: 305

Pila después de ejecutar el programa:

3:
2:
1: "TRESCIENTOS CINCO"

Eso es todo mis amigos.
Un gran abrazo a todos y a trabajar se ha dicho. Smile

Orly Wink

"Cuando el entendimiento se enturbia, la fe es el filtro que potabiliza nuestra mente."

Top
Integró: 25/09/2004
Envíos: 375
MonedasHP: 109
Imagen de Jhusel
Calc: HP49 | ROM:2.10-7
 
#1
Dom, 02/03/2008 - 13:18

Uyy sinceramente lo veo difícil y a mi parecer va ser un código muy extenso pero veamos si lo logro pues jaja tendria que hacerlo con CASE THEN END


«
 n
«
CASE
n 0 == THEN "CERO" END
n 1 == THEN "UNO" END
n 2 == THEN "DOS" END
.
.
.
.
n 305 == THEN "TRESCIENTOS CINCO" END
.
.
.
.
.
END
»
»

salu2

n/a
Top
Integró: 30/08/2006
Envíos: 14
MonedasHP: 0
Imagen de severo
 
#2
Dom, 02/03/2008 - 13:51

jhusel que gracioso que eres tu si pasas de payaso la cuestion no es esa se supone que se trata de hacerlo corto no ? te imaginas hacer este programa hasta el numero 4294967296 es in menso el programa se llena la memoria de tu hp bueno yo lo veo un poco dificil

[d]Somos fichas de ajedrez en un juego de poder[/d]

Top
Integró: 25/09/2004
Envíos: 375
MonedasHP: 109
Imagen de Jhusel
Calc: HP49 | ROM:2.10-7
 
#3
Dom, 02/03/2008 - 18:24

Hola Severo no veo otra solución y es la única que se me vino a la mente Laughing out loud . Alguien tiene un avance pues debería reducirse los limites quizás del 0 al 100 pero igual lo veo extenso.

Salu2

n/a
Top
Integró: 10/03/2004
Envíos: 41
MonedasHP: 8
Imagen de Orly
Calc: HP49 | ROM:1.19-6
 
#4
Lun, 03/03/2008 - 14:31

Hola Estimados Amigos Jhusel y Severo!

Tiene razón mi amigo Severo, el código fuente del algoritmo debería ser corto, no tendría sentido escribir un programa que fuese más "pesado" que el "peso" del propio resultado o solución.

Amigo Jhusel, con todo respeto, considero tu propuesta de solución a este desafío como una simple broma de amigos.

La verdadera solución va por otro lado.

Les propongo resolver este desafío entre todos. Qué les parece?

Cómo es más complicado que el resto de los minidesafíos que se plantearon anteriormente, tratemos de esbozar alguna solución "seria" (no se aceptan las bromas) y sobre ella ir haciendo continuas mejoras u optimizaciones para ver si logramos llegar, entre todos, al verdadero código buscado.

Vamos mis estimados Amigos AdictosHP, a mover las neuronas!

Saludos!

Orly Wink

"Cuando el entendimiento se enturbia, la fe es el filtro que potabiliza nuestra mente."

Top
Integró: 23/02/2008
Envíos: 171
MonedasHP: 0
Imagen de Martin89
 
#5
Mar, 14/10/2008 - 23:53

Una vez en clase de programación estructurada hicimos uno para números romanos,
Por lo que veo el tema es viejo, así que como no hay prisa quizás cuando acaben mis exámenes le echemos galleta jajaja

Saludos

=================================================================
http://www.hpmartin.net84.net/ Cool
=================================================================

Top
Integró: 19/07/2006
Envíos: 79
MonedasHP: 12
Imagen de Alecor
Calc: HP49 | ROM:HP48-G REVISION #2.10-7
 
#6
Lun, 20/10/2008 - 17:36

Solo hemos recibido la propuesta de Edwin alguien se le mide a realizarlo de otra manera??

Haz parte del cambio zeitgeistcolombia.com, la revolución es ahora!!

Follow me: http://twitter.com/alecor_

Top
Integró: 05/06/2003
Envíos: 295
MonedasHP: 92
Imagen de Gaak
Calc: HP50 | ROM:2.15
 
#7
Lun, 20/10/2008 - 22:24
Introduzca la cantidad:

- Gaak -

Gustavo Portales | HPcalc | Foro | Videos

Top
Integró: 26/12/2007
Envíos: 420
MonedasHP: 203
Imagen de Dani_
Calc: HP50 | ROM:2.09
 
#8
Lun, 20/10/2008 - 23:54

No podía ser otro que Gaak... Smile

Si bien no es para las HP, lo probé y funciona muy bien.

Usuario de HP 50g

Top
Integró: 10/03/2004
Envíos: 41
MonedasHP: 8
Imagen de Orly
Calc: HP49 | ROM:1.19-6
 
#9
Sáb, 27/06/2009 - 12:57

.Todavía no hay ninguna solución en UserRPL?

Orly Wink

"Cuando el entendimiento se enturbia, la fe es el filtro que potabiliza nuestra mente."

Top
Integró: 30/05/2009
Envíos: 35
MonedasHP: 12
Imagen de woddo
Calc: HP50
 
#10
Sáb, 27/06/2009 - 13:27

Veo que este tema es antiguo.

No veo la solución de Edwin pero a mi se me ocurre descomponer el numero en unidades, decenas, centenas, unidades de mil, etc. y asociarle a cada descomposición el nombre respectivo.

Bien, trabajeré en esto.

Top
Integró: 31/08/2008
Envíos: 55
MonedasHP: 0
Imagen de sx_viruta
 
#11
Dom, 28/06/2009 - 10:04

yo creo que si haaa , me diste una idea amigo , si descomponiendo en unidades podria ser el camino probare por mi lado tambien

SX_VIRUTA

Top
Integró: 20/05/2003
Envíos: 139
MonedasHP: 36
Imagen de Edwin
Calc: HP48G/GX
 
#12
Dom, 28/06/2009 - 15:19

Envío nuevamente la propuesta que había hecho. No se porque me lo habían borrado.
conversor

La cuestión en la vida no es saber mucho, sino olvidarse de poco.
http://www.edwincordoba.com/

Top
Integró: 13/12/2004
Envíos: 121
MonedasHP: 16
Imagen de Roman
Calc: HP49 | ROM:2.10-7
 
#13
Dom, 28/06/2009 - 21:39

Estimado Edwin su solucion es muy buena, el algoritmo que uso era el que tenia en mente, de pronto se pueda mejorar pero para mi esta bien. Lo que me asombra es que siempr eres el primero en dar respuesta, yo voy viendo el post y mientras lei los comentarios pensaba como hacerlo hasta que llegue a tu respuesta la probe y me parece bien jhejejejejej

Salu2

Román Barrios
Blog:Roman's Blog
Web: Roman Barrios

Top
Integró: 05/06/2003
Envíos: 295
MonedasHP: 92
Imagen de Gaak
Calc: HP50 | ROM:2.15
 
#14
Lun, 29/06/2009 - 01:27

Edwin, su comentario antiguo como el de muchos usuarios se vieron afectados cuando el sitio tuvo un problema en la base de datos, es por eso que no aparecen muchos comentarios, los que datan de esas fechas.

Recuerdo también que se perdieron todos los primeros comentarios de CalculadorasHP.org

Saludos.
- Gaak -

Gustavo Portales | HPcalc | Foro | Videos

Top
Integró: 30/05/2009
Envíos: 35
MonedasHP: 12
Imagen de woddo
Calc: HP50
 
#15
Mar, 30/06/2009 - 18:55

Bien Edwin también ya tenía algo muy parecido a tu codigo pero trabajando con string y a puros HEAD y TAIL formando el numero, en vez de los IP y FP que tu usas, pero en el fondo trabajan muy parecido. Me a costado terminarlo, estoy algo fuera de práctica en esto de la programación.

Que mal que se hallan perido los temas antiguos, siempre se hallan cosas interesantes en estos.

Top
Integró: 16/08/2009
Envíos: 7
MonedasHP: 0
Imagen de CarlosDM
Calc: HP50
 
#16
Dom, 16/08/2009 - 03:01

Hola soy nuevo aqui y nuevo en el uso de estas calculadoras, pero todo esto me parece emocionante y propongo esta solucion.

Que tal convertir a una cadena de caracteres el número. Luego contamos el número de dígitos presentes y vamos formanndo el nombre del numero contando desde unidades, decenas, centenas, etc, en forma regresiva. Entonces el programa solo tendria que almacenar los nombres de las cifras "uno", "dos", "tres", etc, y los de "cien", "mil", "diez mil", etc.
Asi un numero tiene la forma
d1 d2 d2 d3 d4 ... dn Siendo las "d" los digitos.
Si el numero es de tres digitos es del orden de las centenas, entonces
el programa tendría que comprobar que digito es el primero de izquierda a derecha y unir la cadena correspondiente. Por ejemplo
305
Como son tres digitos es del orden de las centenas
Entonces el programa empieza desde las centenas hacia atrás revisando cada digito.
Prueba el primer dígito y comprueba que es un tres, entonces une la cadena "tres" con la cadena "cientos". Si en algun momento hay un cero no hace nada y continua, pero disminuyendo el orden siendo el siguiente (en este caso decenas) un orden menor. Lo hace asi hasta llegar a las unidades.
En cada paso el programa solo une las cadenas correspondientes al orden del digito con las correspondientes al nombre del dígito.

Bueno esa es toda mi propuesta. Si aquí hay algun ingeniero en sistemas, informática o similar seguro propondrá algo mejor, pero al menos es un comienzo.
Bueno nos vemos.

Top

Twitter

Cargando...