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.

Este foro, solamente es de lectura, para los nuevos foros dirígase a www.adictoshp.org

INTERPOLACION CON LISTAS

14 respuestas [Último envío]
Integró: 21/02/2012
Envíos: 9
MonedasHP: 14
Imagen de adictto21
adictto21 Usuario Desconectado. Visto por última vez 52 semanas 6 horas.
Calc: HP50 | ROM:2.15
INTERPOLACION CON LISTAS
 
Dom, 15/04/2012 - 19:33

Saludos hpadictos, buscando entre los foros este tema todavia esta abierto,
bueno quisiera que me ayuden a realizar un programa que interpole entre listas
por ejemplo teniendo las listas ya almacenadas
A={1 2 3 4 5}
B={10 20 30 40 50}

interpole para cualquier valor de A
es decir que al ingresar 1.5 obtenga 15
o al ingresar 6 obtenga 60

Gracias de antemano y espero que puedan ayudarme con este programa

Top
Integró: 19/11/2003
Envíos: 946
MonedasHP: 1428
Imagen de MACH
MACH Usuario Desconectado. Visto por última vez 35 semanas 6 días.
Calc: HP50 | ROM:HP50-C Revisión #2.15 | HP49G | HP48G+ | HP28C | HP75C | HP41CV | HP67
 
#1
Dom, 15/04/2012 - 21:38

Hola!, Adictto21:

Puedes buscar en ... http://www.adictoshp.org/node/436

¡El conocimiento, a través de la capacitación, es la base de la sabiduría!. ¡ Ni a la persona, ni al ingenio, lo hace, el título!.
Cordiales saludos desde Neuquén, Patagonia Argentina.
M.A.C.H.

Top
Integró: 20/05/2003
Envíos: 220
MonedasHP: 236
Imagen de Edwin
Edwin Usuario Desconectado. Visto por última vez 33 semanas 1 día.
Calc: HP48G/GX
 
#2
Dom, 15/04/2012 - 21:55

Puedes usar también:
http://www.hpcalc.org/details.php?id=7224
que genera un ejecutable, si los datos lo tienes como lista debes convertirlo a Matrix con los comandos AXL y COL->

La cuestión en la vida no es saber mucho, sino olvidarse de poco.

Top
Integró: 21/02/2012
Envíos: 9
MonedasHP: 14
Imagen de adictto21
adictto21 Usuario Desconectado. Visto por última vez 52 semanas 6 horas.
Calc: HP50 | ROM:2.15
 
#3
Dom, 15/04/2012 - 22:06

Saludos Edwin , gracias por tu respuesta, es lo que estaba buscando pero como haria para colocar en el programa que quiero realizar ya que la interpolacion era una parte, lo que estaba buscando era el codigo de programacion.
Gracias

Top
Integró: 19/11/2003
Envíos: 946
MonedasHP: 1428
Imagen de MACH
MACH Usuario Desconectado. Visto por última vez 35 semanas 6 días.
Calc: HP50 | ROM:HP50-C Revisión #2.15 | HP49G | HP48G+ | HP28C | HP75C | HP41CV | HP67
 
#4
Dom, 15/04/2012 - 22:23

Hola!, Adictto21:

Si leyeras mi post, allí hay ejemplos, que te servirían. Obviamente has leído el último, que ha ingresado.

¡El conocimiento, a través de la capacitación, es la base de la sabiduría!. ¡ Ni a la persona, ni al ingenio, lo hace, el título!.
Cordiales saludos desde Neuquén, Patagonia Argentina.
M.A.C.H.

Top
Integró: 22/09/2008
Envíos: 54
MonedasHP: 74
Imagen de Emiaj
Emiaj Usuario Desconectado. Visto por última vez 32 semanas 5 días.
Calc: HP49 | ROM: 2.15
 
#5
Dom, 15/04/2012 - 22:25

Excelente programa Edwin, me ha servido de mucho, debo destacar la velocidad que tiene para interpolar matrices de gran tamaño.

Adictto21, genera el ejecutable y lo llamas desde tu programa y listo.
Saludos

Top
Integró: 20/05/2003
Envíos: 220
MonedasHP: 236
Imagen de Edwin
Edwin Usuario Desconectado. Visto por última vez 33 semanas 1 día.
Calc: HP48G/GX
 
#6
Dom, 15/04/2012 - 22:31

Como esta programando en User o System

La cuestión en la vida no es saber mucho, sino olvidarse de poco.

Top
Integró: 20/05/2003
Envíos: 220
MonedasHP: 236
Imagen de Edwin
Edwin Usuario Desconectado. Visto por última vez 33 semanas 1 día.
Calc: HP48G/GX
 
#7
Dom, 15/04/2012 - 22:39

Emiaj cita:
Excelente programa Edwin, me ha servido de mucho, debo destacar la velocidad que tiene para interpolar matrices de gran tamaño.

Adictto21, genera el ejecutable y lo llamas desde tu programa y listo.
Saludos


Si la velocidad es debido a que la rutina de interpolación está hecho en ML.

La cuestión en la vida no es saber mucho, sino olvidarse de poco.

Top
Integró: 17/09/2007
Envíos: 155
MonedasHP: 215
Imagen de LuisBeas
LuisBeas Usuario Desconectado. Visto por última vez 23 semanas 23 horas.
 
#8
Lun, 16/04/2012 - 01:05

Holas, esto me recuerda a un problema que tuve, la calculadora por si sola puede aproximar una recta con nuestros puntos, pero me parece que no es posible hacer aproximaciones a polinomios con grados mayores o iguales a 2 ¿o sí? Por si sola, aquí les dejo un programita que hice para eso su entrada son dos listas y un numero, la primera lista son las abscisas de los puntos, la segunda lista son las ordenadas y el numero es el grado del polinomio del cual queremos obtener sus coeficientes y es al que suponemos representa con el menor error nuestros puntos, es decir la misma idea que para una recta pero con polinomios de grados 2 o mayor, utilice el método de mínimos cuadrados, la salida es una matriz columna donde los coeficientes corresponden a los términos en orden creciente es decir el primero es el termino independiente y el ultimo el coeficiente principal del polinomio, Aquiles dejo el código:

«
  @ xi yi grado -> coeficientes
  { 0. 1. 2. 3. 4. 5. 6. }
  { 0. 1. 4.01 9.0 15.99 24.99 36. }
  2.
    X Y M
  «
    X VANDERMONDE TRAN Y AXL 1 COL *
    { 1 1 } M 1 + 1 2 LIST SUB

    X VANDERMONDE DUP TRAN SWAP *
    { 1 1 } M 1 + DUP 2 LIST SUB

    /
  »
»

Top
Integró: 21/02/2012
Envíos: 9
MonedasHP: 14
Imagen de adictto21
adictto21 Usuario Desconectado. Visto por última vez 52 semanas 6 horas.
Calc: HP50 | ROM:2.15
 
#9
Lun, 16/04/2012 - 22:02

Gracias por sus respuestas, bueno resien me estoy empezando en lo que es programacion, utilizo el hpuseredit, bueno el programa que dejo Edwin , lo he colocado en el emulador de la hp que viene con el hpuseredit y realmente es muy bueno, pero Emiaj dice textualmente

Adictto21, genera el ejecutable y lo llamas desde tu programa y listo.

como paso el ejecutable al hpuseredit o lo llamo la verdad que no entiendo,
espero que me puedadn en como pasarlo al hpuseredit

Gracias MACH si lei tu ayuda, solo que el post de Edwin era mas especifico,
y gracias Luis Beas por tus aportes

Top
Integró: 22/09/2008
Envíos: 54
MonedasHP: 74
Imagen de Emiaj
Emiaj Usuario Desconectado. Visto por última vez 32 semanas 5 días.
Calc: HP49 | ROM: 2.15
 
#10
Mar, 17/04/2012 - 21:26

Holap Adictto21

Prueba esto, creas tu ejecutable en el emulador del Hpuseredit le das un nombre y lo guardas, luego escribes tu programa..... cuando llegues el momento de utilizar la interpolación lo llamas poniendo en tu código el nombre que le diste ejecutable, así cuando mandes tu programa al emulador este llamara al ejecutable.
Aqui un ejemplo:

«
1.5 1 INTER1 
»

INTER1 : es el nombre del ejecutable, interpola 1.5 en la columna 1 de tu matriz

Top
Integró: 21/02/2012
Envíos: 9
MonedasHP: 14
Imagen de adictto21
adictto21 Usuario Desconectado. Visto por última vez 52 semanas 6 horas.
Calc: HP50 | ROM:2.15
 
#11
Mar, 17/04/2012 - 22:23

Gracias Emiaj por rspoderme mira el codigo con el que estoy intentando
«
"INGRESE a
"
""
INPUT OBJ

 E @ e ES EL VALOR A INTERPOLAR
«
[ [ 1 10 ]
[ 2 20 ]
]
TEXE
 C
«
E 1 BB

»
»
»

BB Es el ejecutable interpola que esta almacenado en el emulador como variable, tbn alli sta mi matriz y E es el valor que quiero interpolar
pero para guardar la matriz le puse T->EXE Y la guarde como C
pero no logro que interpole me sale external o simplemente 1.5 1

Top
Integró: 20/05/2003
Envíos: 220
MonedasHP: 236
Imagen de Edwin
Edwin Usuario Desconectado. Visto por última vez 33 semanas 1 día.
Calc: HP48G/GX
 
#12
Mar, 17/04/2012 - 22:51

El comando T->EXE es una herramienta para crear el ejecutable y no debería estar en el código del programa. Del programas que presenta debes eliminar este código

[ [ 1 10 ]
[ 2 20 ]
]
TEXE
 C

y lo ejecutas desde el emulador:
[ [ 1 10 ]
[ 2 20 ]
]
TEXE

En la pila aparecera un external, este objeto ahora si lo guardas en la variable BB ('BB' STO) y usa el código:

«
"INGRESE a
"
""
INPUT OBJ

 E @ e ES EL VALOR A INTERPOLAR
«
«
E 1 BB

»
»
»

La cuestión en la vida no es saber mucho, sino olvidarse de poco.

Top
Integró: 21/02/2012
Envíos: 9
MonedasHP: 14
Imagen de adictto21
adictto21 Usuario Desconectado. Visto por última vez 52 semanas 6 horas.
Calc: HP50 | ROM:2.15
 
#13
Jue, 19/04/2012 - 21:47

Gracias Edwin ia logre realizar mi programa con ayuda del ejecutable
solo 1 pregunta mas
si lo convierte a libreria porque todavia lo tengo en variable
no hay problema con el ejecutable
y si posible desde el programa ingresar la matriz asi como intentaba en la primera parte y no ingresarla al ejecutable

Top
Integró: 20/05/2003
Envíos: 220
MonedasHP: 236
Imagen de Edwin
Edwin Usuario Desconectado. Visto por última vez 33 semanas 1 día.
Calc: HP48G/GX
 
#14
Jue, 19/04/2012 - 22:21

no se como estás convirtiendolo a biblioteca (Library), pero lo que se hace es crear un nuevo objeto para instalar en un puerto y esto es independiente de las variables en HOME, si eliminas estas variables debería funcionar. Para crear la biblioteca debes especificar las variables que seran visibles y las que seran invisibles.

Cita:

y si posible desde el programa ingresar la matriz asi como intentaba en la primera parte y no ingresarla al ejecutable

si es posible hacer eso, no hay ningun problema, se debería hacer así si los datos de la matriz siempre son diferentes.

La cuestión en la vida no es saber mucho, sino olvidarse de poco.

Top

Twitter

Cargando...

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