Glosario

Protocolo de transferencia de datos usado por las HP48 y la mayoría de los programas de comunicación. La implementación del Kermit en la HP48 es muy lenta, y es incapaz de transmitir a más de 2400bps, aunque la implementación en computadora es mucho más rápida. Kermit es el único protocolo de transferencia que acepta el modo de transferencia ASCII en vez de tan sólo modo binario. La Universidad de Columbia tiene los derechos sobre el Kermit. El nombre Kermit viene de Kermit la Rana, de los Muppets.

El comando LLCM

31 respuestas [Último envío]
Integró: 10/03/2004
Envíos: 53
MonedasHP: 28
Imagen de Orly
Calc: HP49 | ROM:1.19-6
El comando LLCM
 
Sáb, 13/03/2010 - 10:35

Hola mis estimados Amigos AdictosHP:

Tanto tiempo de no ingresar en el foro!!!!!

Qué alegría saber que todavía sigue en pie!!!!

Ojalá volvamos a encontrarnos con todos los viejos y experimentados Amigos AdictosHP y también con los nuevos...

Bueno, basta de palabras... ahora les presento un nuevo desafío porque me parece que este importante foro de Minicampeonatos debe volver a reactivarse...

El desafío es el siguiente:

Realizar en código UserRPL el programa más rápido y más pequeño que permita calcular el Mínimo Común Múltiplo (MCM) de cualquier conjunto de números enteros.
O sea que el programa debe recibir como argumento en la pila una lista con los números enteros a calcular el MCM y al aplicarlo debe obtener el MCM.

IMPORTANTE: En el código UserRPL se pueden emplear cualquier comando UserRPL de la calculadora menos el LCM.

Pila antes de ejecutar el comando LLCM:
2:
1: {4 6 9}

Pila después de aplicar el comando LLCM
2:
1: 36

Listo mis queridos Amigos AdictosHP... ahora a pensar...

Un gran abrazo a todos y espero sus ingeniosas contribuciones!!!

Orly Wink

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

Top
Integró: 23/03/2009
Envíos: 146
MonedasHP: 296
Imagen de yder
AdictoHP+
Calc: HP50
 
#1
Sáb, 13/03/2010 - 13:57

Bueno previo un cordial saludo.
Aqui esta mi codigo seguire mejorando.

«

 SORT  DUP DUP SIZE  
 SWAP REVLIST HEAD   
 
  1 ->  LISTA TAMAÑO  MCM N 
   «
   DO
       MCM 
       LISTA N GET 
       MOD 
     IF 0 ==  THEN
          MCM 'MCM' STO 
     ELSE
     MCM 
     LISTA N GET 
      DUP2
     * UNROT GCD /  
        
       
      'MCM' STO
     END
       N 1 + 'N' STO 
   UNTIL
     N TAMAÑO ==  
   END
   MCM
»
»

Seguiré mejorando el codigo.

Top
Integró: 26/12/2007
Envíos: 627
MonedasHP: 593
Imagen de Dani_
Calc: HP50 | ROM:2.09
 
#2
Sáb, 13/03/2010 - 16:02

Sin usar LCM, para la serie 49:

<< LIST-> 2 SWAP START DUP2 GCD / * NEXT>>

El crédito es de Werner Huysegoms.

Ingeniero. Usuario de HP 50g.

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#3
Sáb, 13/03/2010 - 22:34

Hola inspirado en el post anterior:

«  « DUP2 GCD / * »  STREAM  »

Top
Integró: 10/03/2004
Envíos: 53
MonedasHP: 28
Imagen de Orly
Calc: HP49 | ROM:1.19-6
 
#4
Lun, 15/03/2010 - 09:13

Excelentes soluciones mis estimados Amigos AdictosHP Dani_ y LuisBeas estás soluciones son insuperables de verdad!!!!

MIS FELICITACIONES!!!!

Son los ganadores en este desafío inicial...

Pero...

Ahora compliquemos un poco más el desafío y aumentemos más las restricciones iniciales.

Esto es, encontrar el comando LLCM sin utilizar los comandos LCM ni GCD.

Saludos cordiales y a seguir pensando...

Orly Wink

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

Top
Integró: 10/03/2004
Envíos: 53
MonedasHP: 28
Imagen de Orly
Calc: HP49 | ROM:1.19-6
 
#5
Lun, 15/03/2010 - 09:16

Hola mis estimados Amigos AdictosHP, que tal...

Estuve elaborando mi primera solución para el comando LLCM, que
calcula el Mínimo Común Múltiplo (LCM) de una lista de números
enteros sin utilizar los comandos LCM ni GCD.

El código en UserRPL es el que detallo a continuación:

<<
  <<  2  ->LIST  FACTORS  XQ  1
     <<  2
        <<  NSUB  2  MOD  0  ≠
            IF
            THEN  2  ->LIST
            ELSE  DROP2
            END
        >>  DOSUBS  EVAL
      >>  DOSUBS  DUP  SIZE  {}  DUP  ->
F  T  B  E
      <<  1  T
          FOR  I  F  I  GET  B  OVER  HEAD
POS  DUPDUP  0  ==
          IF
          THEN  DROP2  EVAL  B  ROT  +
E  ROT  +  'E'  STO  'B'  STO
          ELSE  E  SWAP  GET  ROT  2
GET  DUP  {}  +  UNROT  <
            IF
            THEN  E  UNROT  REPL  'E'
STO
            ELSE  DROP2
            END
          END
        NEXT  B  E  ^  DUP  SIZE  1  >
        IF
        THEN  πLIST
        ELSE  EVAL
        END
      >>
    >>  STREAM
>>

----------------------------------------
Pila antes de ejecutar el Comando LLCM
----------------------------------------
2:
1: {44 60 125}

----------------------------------------
Pila después de ejecutar el Comando LLCM
----------------------------------------
2:
1: 16500

----------------------------------------
Datos del Comando LLCM
----------------------------------------
Tamaño: 392 bytes
Tiempo: 6,9 seg
Calculadora: HP 49G

Orly Wink

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

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#6
Lun, 15/03/2010 - 11:23

A mi tambien me paresia que usar el comando GCD, no era parte de la idea del desafio, esta es mi nueva propuesta:

« 
SORT 
« DUP2 WHILE  OVER MOD DUP REPEAT SWAP END DROP  / * » STREAM
»

Y ademas me parece que se deberia convenir una misma lista con la cual podamos probar los programas.

Top
Integró: 23/03/2009
Envíos: 146
MonedasHP: 296
Imagen de yder
AdictoHP+
Calc: HP50
 
#7
Lun, 15/03/2010 - 13:40

Aqui mi codigo.

«
 LIST->
  2 SWAP 
  START
  DUP2 
  2 ->LIST   
  LGCD NIP
  / * 
  NEXT

»

Ojo no utilizo el GCD sino el LGCD.

Top
Integró: 26/12/2007
Envíos: 627
MonedasHP: 593
Imagen de Dani_
Calc: HP50 | ROM:2.09
 
#8
Lun, 15/03/2010 - 13:25

Muy bueno Luis Smile

Ingeniero. Usuario de HP 50g.

Top
Integró: 10/03/2004
Envíos: 53
MonedasHP: 28
Imagen de Orly
Calc: HP49 | ROM:1.19-6
 
#9
Lun, 15/03/2010 - 14:54

Excelente solución Amigo LuisBeas...

FELICITACIONES!!!!

Insuperable de verdad...

Saludos a todos mis estimados Amigos AdictosHP!!!!

Ganador indiscutido en este nuevo desafío el Amigo LuisBeas.

Orly Wink

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

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#10
Lun, 15/03/2010 - 21:28

Gracias Big smile desde que conosco este foro lo que mas me atrajo fue siempre esto de los desafios, por fin gane uno Big smile, bueno por el momento, chau y suerte a todos

Top
Integró: 07/02/2010
Envíos: 265
MonedasHP: 362
Imagen de riboflavina
AdictoHP+
Calc: HP50 | ROM:2.09
 
#11
Lun, 15/03/2010 - 22:28

talvez deba aprovecharme de esto y hacer q todos ustedes hagan mis programas asi parte por parte hara mi programa mejor dicho por modulos jeeeeeeeeee Smile Big smile Big smile

Riboflavina aprendiendo el SYSTEM RPL/Arequipa-Peru

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#12
Mar, 16/03/2010 - 02:22

Y si quisiera poner un minitutorial de como usar DOLIST, DOSUBS y STREAM, donde lo pondria?

Top
Integró: 09/03/2010
Envíos: 467
MonedasHP: 926
Imagen de zuaritx
Calc: HP48G/GX | ROM:.
 
#13
Mar, 16/03/2010 - 08:31

si DOLIST Y STREAM son barbaros comandos para trabajar con listas, el DOSUBS, no lo suelo usar tanto aunque también es potente.

Top
Integró: 26/12/2007
Envíos: 627
MonedasHP: 593
Imagen de Dani_
Calc: HP50 | ROM:2.09
 
#14
Mar, 16/03/2010 - 08:46

LuisBeas cita:
Y si quisiera poner un minitutorial de como usar DOLIST, DOSUBS y STREAM, donde lo pondria?

Me parece que puede ser en el foro de "Programación HP - UserRPL" ó en "Cursos Online - User Medio", ó "Calculadoras HP - Tutoriales y Soluciones HP49/HP50".

Yo lo pondría en "Programación HP - UserRPL".

A compartir esos conocimientos que parece que sabes bastante Glasses

Ingeniero. Usuario de HP 50g.

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#15
Mar, 16/03/2010 - 22:57

Hola a todos ya termine el minitutorial de como usar DOLIST, DOSUBS y STREAM 2 preguntas que quisiera hacer, es necesario poner una renuncia?? y la otra me van a dar monedas HP??

Top
Integró: 07/02/2010
Envíos: 265
MonedasHP: 362
Imagen de riboflavina
AdictoHP+
Calc: HP50 | ROM:2.09
 
#16
Mié, 17/03/2010 - 08:15

exelente aporte luis precisamente ahora estoy haciendo un programa con listas , seguramente alguno de esos comandos me valla a ser util.

para que sirve el comando STREAM , y por el comando LCM no me funciona probe poniendo {4 5 6} deberia sakar 60 pero me sale error

saludos

Riboflavina aprendiendo el SYSTEM RPL/Arequipa-Peru

Top
Integró: 24/02/2004
Envíos: 405
MonedasHP: 298
Imagen de Elias1976
Calc: HP49 | ROM:Hp 49G - Hp 48GX - Hp 48SX - Hp 42S - Hp 41CV - Hp 32SII - Hp 32S - Hp 28S - Hp 17BII - Hp 12C - Casio Classpad 330
 
#17
Mié, 17/03/2010 - 11:14

riboflavina cita:
exelente aporte luis precisamente ahora estoy haciendo un programa con listas , seguramente alguno de esos comandos me valla a ser util.

para que sirve el comando STREAM , y por el comando LCM no me funciona probe poniendo {4 5 6} deberia sakar 60 pero me sale error

saludos

STREAM toma 2 elementos de una lista por vez y los procesa.

{ 4 5 6 }

Toma primero 4 y 5
Luego 5 y 6

(No ando con la calculadora en estos momentos, pero me imagino un ejemplo simple....):

<< { 4 5 6 }
<< + >>
STREAM
>>

Sería 4 5 + = 9
Luego 5 6 + = 11

El resultado de STREAM en este caso sería { 9 11 }

Si quieres procesar más de 2 elementos por vez debes usar DOSUBS.

Con el programa anterior usando DOSUBS sería:

<< { 4 5 6 } 2
<< + >>
DOSUBS
>>

Espero que esto haya resuelto tu duda.

Saludos.-

Top
Integró: 23/03/2009
Envíos: 146
MonedasHP: 296
Imagen de yder
AdictoHP+
Calc: HP50
 
#18
Mié, 17/03/2010 - 12:25

Un saludo a toda la comunidad.
Bueno un manual donde está la sintaxis de esos comandos y más
en español es:
HP49G Guia de Bolsillo.
Descargar.

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#19
Mié, 17/03/2010 - 22:28

Hola a la pregunta que hizo riboflavina, la respuesta de Elias1976 no es completamente cierta, si tuviéramos:
<< { 4 5 6 }
<< + >>
STREAM
>>

seria: 4 5 + = 9
luego: 9 6 + = 15
Es decir primero tomado dos valores y devuelve uno y este resultado lo usa con el siguiente elemento para aplicar el programa otra vez y este nuevo resultado con el siguiente elemento y así sucesivamente, con lo que la respuesta es 15.
Y a yder, el manual que pusiste muy bueno, pero en el minitutorila que he realizado doy una explicación un poco mas extendida, y con algunos datos mas que no aparecen ahí
y tambien buelvo a hacer las dos preguntas:
es necesario poner una renuncia?? y la otra me van a dar monedas HP??

Top
Integró: 05/06/2003
Envíos: 343
MonedasHP: 186
Imagen de GkEnte
Calc: HP50 | ROM:pasé por aquí, pero ya lo pasado pasado.
 
#20
Mié, 17/03/2010 - 23:10

LuisBeas cita:
es necesario poner una renuncia?? y la otra me van a dar monedas HP??
Renuncia?, ¿qué es eso?
Respecto a las monedas, se está implementando una sección especial para publicar los tutoriales, pero puede publicar el suyo y cuando esta sección se inaugure, se movería su tutorial y automáticamente se le asignan las monedas que me parecen son 10.

- Gaak -

n/a
Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#21
Mié, 17/03/2010 - 23:38

Hola Gaak, me refiero a esa parte donde se pone que uno no se hace responsable por lo daños que pueda causar, es necesaria esa parte?

Top
Integró: 05/06/2003
Envíos: 343
MonedasHP: 186
Imagen de GkEnte
Calc: HP50 | ROM:pasé por aquí, pero ya lo pasado pasado.
 
#22
Mié, 17/03/2010 - 23:49

Creo que eso es obvio, ya que nadie me imagino que se haga responsable por algún error o daño que pueda sufrir alguna calculadora de otra persona. No es necesario colocar ese mensaje, pero tampoco está prohibido hacerlo.

- Gaak -

n/a
Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#23
Jue, 18/03/2010 - 00:06

Bueno entonces lo dejo aquí de una vez y también en mi blog donde iré poniendo sus futuras mejoras Wink y pido disculpas por todos los errores ortográficos que pueda haber y agradecería sus comentarios y correcciones:

http://rapidshare.com/files/364850105/Tuto.doc.html

Top
Integró: 07/02/2010
Envíos: 265
MonedasHP: 362
Imagen de riboflavina
AdictoHP+
Calc: HP50 | ROM:2.09
 
#24
Jue, 18/03/2010 - 00:15

buen material luis

Dedicado a todos los que usan el pretexto de aprender mas sobre sus calculadora para dejar de hacer sus obligaciones, y que vivan los vicios permitidos
...luis beas

suena como a frase de novela

jajaja q bueno luis creo q he sido el primero descargarlo muy bueno tiene imagenes y ejemplo sencillos de entender

muchas gracias

Riboflavina aprendiendo el SYSTEM RPL/Arequipa-Peru

Top
Integró: 26/12/2007
Envíos: 627
MonedasHP: 593
Imagen de Dani_
Calc: HP50 | ROM:2.09
 
#25
Jue, 18/03/2010 - 00:25

Está muy bueno Luis. No es tan "mini" en mi opinión, "mini" sería un tutorial de 2 ó 3 páginas. Te dejo 5 monedas HP Cash

Ingeniero. Usuario de HP 50g.

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#26
Jue, 18/03/2010 - 00:35

Muchas gracias por sus comentarios, me dan animos para hacer otro mini tutorial XD, gracias de verdad riboflavina y Dani_

Top
Integró: 24/02/2004
Envíos: 405
MonedasHP: 298
Imagen de Elias1976
Calc: HP49 | ROM:Hp 49G - Hp 48GX - Hp 48SX - Hp 42S - Hp 41CV - Hp 32SII - Hp 32S - Hp 28S - Hp 17BII - Hp 12C - Casio Classpad 330
 
#27
Vie, 19/03/2010 - 10:02

LuisBeas cita:
Hola a la pregunta que hizo riboflavina, la respuesta de Elias1976 no es completamente cierta, si tuviéramos:
<< { 4 5 6 }
<< + >>
STREAM
>>

seria: 4 5 + = 9
luego: 9 6 + = 15
Es decir primero tomado dos valores y devuelve uno y este resultado lo usa con el siguiente elemento para aplicar el programa otra vez y este nuevo resultado con el siguiente elemento y así sucesivamente, con lo que la respuesta es 15....

Disculpas por el error, es que ando sin calculadora en estos momentos....

Igual muchas gracias por la aclaracion.-

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#28
Vie, 19/03/2010 - 12:23

Hola Elias1976, tu que eres moderador, puse un minitutorial, y no me dieron monedas hp por esto, y otra cosa para que sirven las monedas hp??

Top
Integró: 26/12/2007
Envíos: 627
MonedasHP: 593
Imagen de Dani_
Calc: HP50 | ROM:2.09
 
#29
Vie, 19/03/2010 - 21:30

Ya te las van a dar Wink

Estimo que la implementación de las monedas HP es una manera de medir (a largo plazo) el "prestigio" que tiene un AdictoHP en la comunidad. Es decir, a grandes rasgos, cómo es valorado por los demás miembros de la comunidad. Además por supuesto depende del nivel de actividad que tengas, ya que te dan dos monedas HP por cada post.
Pero responder una pregunta complicada, ganar un mini-campeonato, publicar un tutorial o ayudar a solucionar un problema a un miembro de la comunidad debería ser motivo de que el (los) miembro( s ) beneficiado( s ) por la generosidad del que responde, le done(n) unas buenas monedas HP a este último.

Por lo menos es lo que interpreto.

Ingeniero. Usuario de HP 50g.

Top
Integró: 25/09/2004
Envíos: 480
MonedasHP: 511
Imagen de Jhusel
Calc: HP49 | ROM:2.10-7 | Calc: HP50 | ROM: 2.15
 
#30
Sáb, 20/03/2010 - 15:21

LuisBeas cita:
Hola Elias1976, tu que eres moderador, puse un minitutorial, y no me dieron monedas hp por esto, y otra cosa para que sirven las monedas hp??

Para levantar el ego!!!

salu2

Top
Integró: 17/09/2007
Envíos: 153
MonedasHP: 211
Imagen de LuisBeas
 
#31
Sáb, 20/03/2010 - 19:05

Hola Jhusel bueno entonces creo que ya no necesito mas nomnedas Big smile , gracias por la informacion chau y suerte a todos.

Top

Twitter

Cargando...

CAPTCHA
Esta pregunta es para probar si usted es un visitante humano y así evitar el spam automatizado.
2 + 7 =
Solucione este simple problema matemático e ingrese el resultado. Por ejemplo: para 1+3, ingrese 4.