Glosario

Abreviatura para la Notación Polaca Inversa o Reverse Polish Notation.
Esta notación de sufijo es la sintaxis de entrada que casi todas las calculadoras HP usan. Básicamente hay dos tipos de RPN. Una usada en calculadoras más viejas, hace que el ENTER duplique el nivel uno del stack en la línea de edición, y otro, usado en las 28/38G/48/49/50, que hace que el ENTER duplique el nivel uno si la línea de edición no está siendo usada, y que pone el contenido de la línea de edición en el nivel uno si la línea de edición está siendo usada. RPN usa notación de sufijo, así que 1+1 es introducido 1 ENTER 1 + en vez de 1 + 1 =.
Esto puede parecer más confuso al principio, pero es mucho más sencillo con expresiones más complejas. La Notación Polaca Inversa se basa en los trabajos de el polaco Jan Lukasiewicz, quien creó la notación de prefijo ( + 1 1 ) llamada Notación Polaca.

Ayuda con tecla ENG

2 respuestas [Último envío]
Integró: 08/03/2010
Envíos: 2
MonedasHP: 6
Imagen de luis987987
Calc: HP50 | ROM:2.09
Ayuda con tecla ENG
 
Lun, 08/03/2010 - 00:43

En estos dias estuve viendo que ya hay respuesta a eso... Solo que en foro que se citaba como respuesta se decia lo siguiente...

%%HP: T(3)F(.); @ HP49 ONLY! - downloadable file (use Kermit)

@ Programs ENG-> and ENG<- accept REAL numbers (no units),
@ changing the exponent by 3 each time (displaying as a string);
@ use NORM to change string back to the original real number:

\<< { * - } ENGX \>> 'ENG\->' STO

\<< { / + } ENGX \>> 'ENG\<-' STO

\<< STR\-> \>> 'NORM' STO

@ Subroutine (not for direct use):
\<< LIST\-> DROP RCLF \-> a b f \<<
{ { 514. DOERR } { 3. EXP ENG \->STR { DROP DROP } ENGX }
{ DUP "E" POS DUP2 1. + OVER SIZE SUB UNROT 1. - 1. SWAP SUB
DUP STR\-> 3. ALOG a EVAL STD \->STR DUP "E" POS { DROP SWAP }
{ SWAP DROP SWAP STR\-> 3. b EVAL \->STR
1. OVER SIZE 1. - SUB } IFTE "E" SWAP + + } } { 0. 2. }
3. PICK TYPE POS 1. + GET EVAL f STOF \>> \>> 'ENGX' STO

@ Programs U-> and U<- accept UNIT objects only,
@ transforming them to other equivalents
@ using different unit prefixes, e.g. 123.4_m = .1234_km

\<< 0. UU \>> 'U\->' STO

\<< 1. UU \>> 'U\<-' STO

@ Subroutine (not for direct use):
\<< \<<
"yzafpn\Gmm.kMGTPEZYYc.d.Dkhk"
"YZEPTGMk.m\Gmnpfazyyh.D.dmcm"
IFTE DUP ROT POS 1. + DUP SUB \>> \-> d p
\<< DUP TYPE 13. \=/ { 514. DOERR } IFT DUP
:INNERCOMP: #54AFh SYSEVAL :{}N: #5459h SYSEVAL
DUP 2. GET "1" SAME 3. 2. IFTE DUP2 GET
IF DUP TYPE 24. == THEN :CHR>$: #37AA5h SYSEVAL d p EVAL NUM
IF DUP 46. \=/ THEN :COERCE: #262F1h SYSEVAL
:#>CHR: #5A75h SYSEVAL 1. \->LIST REPL
ELSE DROP DUP2 1. SWAP 1. - SUB UNROT DUP2 1. + GET
UNROT 3. + OVER SIZE SUB + + END
ELSE UNROT DUP2 1. SWAP 1. - SUB UNROT 1. + OVER SIZE SUB
ROT "." d p EVAL NUM :COERCE: #262F1h SYSEVAL
:#>CHR: #5A75h SYSEVAL SWAP :umP: #2D76Dh SYSEVAL 3. \->LIST
SWAP + + END :INNERCOMP: #54AFh SYSEVAL
:EXTN: #5481h SYSEVAL CONVERT \>> \>> 'UU' STO

{ ENG\-> ENG\<- NORM ENGX U\-> U\<- UU } ORDER

@ End of HP49 downloadable file (EVALuate it to install programs)

Aqui hay dos programas (Bueno, hay mas... Pero en fin)
Son dos funciones... UNo con la tecla ENG como la de las casio y otro para hacerlo con unidades... Por ejemplo: 9_M = 9000_mM. Este segundo programa corre bien. Pero el primero no. Alguien me podria ayudar?

Top
Integró: 23/03/2009
Envíos: 146
MonedasHP: 296
Imagen de yder
AdictoHP+
Calc: HP50
 
#1
Lun, 08/03/2010 - 14:11

Un saludo cordial a la comunidad.
Bueno con respecto al programa que muestras yo encontre uno parecido,
o el mismo,pero tienen pequeñas diferecias.

DIR      @  A directory, containing four named programs:

ENG   @  4.5 ==> "4.5E0" ==> "4500E-3" etc.
  « { * - } ENGX » @ Arithmetic operators for later use

ENGŽ   @  4.5 ==> "4.5E0" ==> ".0045E3" etc.
  « { / + } ENGX » @ Arithmetic operators for later use

NORM     @  "4.5E0" or "4500E-3" or ".0045E3" ==> 4.5
  « STR »

ENGX     @ (internal function called by other programs)
  «   LIST DROP RCLF  a b f
 «
{ { 514. DOERR } { 3. EXP ENG STR { DROP DROP } ENGX }
{ DUP "E" POS DUP2 1. + OVER SIZE SUB ROT ROT 1. - 1. SWAP SUB
DUP STR 3. ALOG a EVAL STD STR DUP "E" POS { DROP SWAP }
{ SWAP DROP SWAP STR 3. b EVAL STR
1. OVER SIZE 1. - SUB } IFTE "E" SWAP + + } } { 0. 2. }
  3. PICK TYPE POS 1. + GET EVAL  f STOF »»

END

funciona,pero la calculadora tiene que estar en modo aproximado y tener un numero en la pila claro. copialo tal como esta al editor para que se vean las flechas.
funciona todo ok.

Top
Integró: 08/03/2010
Envíos: 2
MonedasHP: 6
Imagen de luis987987
Calc: HP50 | ROM:2.09
 
#2
Lun, 08/03/2010 - 23:01

Amigo. Muchas gracias... Me funciono exelente... Sin problemas al primer intento. Gracias por la informacion exacta y ademas por la rapidez al responder.. Que buena gente hay en esta pag

Top

Twitter

Cargando...

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