[Bajar Curso de User-Rpl] [Bajar Curso de System-Rpl] [Bajar Curso de Librerías]
User-Rpl.
|
|
Durante la ejecución de un programa en la calculadora nos puede interesar tomar datos desde el teclado. Para hacer esto posible se pueden usar los comandos INPUT o INFORM. El comando INPUT es apropiado cuando se trabaja con programas que utilicen pocas variables, mientras que el INFORM nos permite trabajar más fácilmente con múltiples variables y dar una descripción de lo que significa cada una.
Este comando nos permite tomar datos desde el teclado de una forma sencilla. Es aconsejable utilizarlo cuando se está trabajado pocas variables, dado a la forma como se presenta la información, pero de igual forma se puede trabajar con múltiples variables. La sintaxis que caracteriza este comando para una sola variable es la siguiente:
<< "Título" ":Nombre_variable:" INPUT >>NOTA: Es importante que se coloque el nombre de la variable entre ": :" para que sea reconocida por el INPUT.
Si se quiere trabajar con más variables, la sintaxis es la siguiente:
<< "Título"
{ ":Nombre_variable_1:
:Nombre_variable_2:
:Nombre_variable_3:"
{1 0}
} INPUT >>Para colocar varias variables se colocan en una lista los nombres de las mismas, el último elemento de la lista "{ 1 0 }" especifica la fila.
EJEMPLO:
<< "Suma de 3 Números"
{ ":N1:
:N2:
:N3 " {1 0} } INPUT OBJ® + + "Suma" ®TAG >>En este ejemplo se toman tres variables ( N1, N2 y N3) y se llevan a formato numérico a través del comando "OBJ®" , luego se suman y se etiqueta el resultado, con el comando "®TAG", bajo el nombre "Suma".
El INFORM es una forma más elaborada de tomar los datos desde el teclado, ya que este comando permite brindar información al usuario de las variables que se estén trabajando. La forma de utilizar este comando es la siguiente:
<< "Título"
{ {"Nombre_variable_1:" "Comentario_1" Tipo_de_dato }
{"Nombre_variable_2:" "Comentario_2" Tipo_de_dato }
{"Nombre_variable_3:" "Comentario_3" Tipo_de_dato }
}
{ #Columnas #Espacio}
{ Valor_Reset_1 Valor_Reset_2 Valor_Reset_3 }
{ Valor_defoult_1 Valor_defoult_2 Valor_defoult_3 }
INFORM >>Primero se especifica el título de la plantilla. Luego se coloca el nombre de cada variable con su respectivo comentario y el tipo de dato que es aceptado para esa variable (los tipos de datos viene en el manual de usuario de la calculadora). Después se determina el número de columnas por pantalla que deben de aparecer, así como la distancia del campo a llenar y el nombre de la variable. A continuación se coloca una serie de valores que aparecerán cuando se borre el contenido de uno o todos los campos; y por último se especifica los valores por defecto que han a de aparecer cuando se ejecute el comando INFORM.
EJEMPLO 1 ( Considerando todos los parámetros ).
<< "Agenda"
{ {"Nombre:" "COLOQUE UN NOMBRE" 2 }
{"Teléfono:" "NUMERO DE TELEFONO" }
{"E-mail:" "DIRECCION DE CORREO" 2 }
}
{ 1 0 }
{ Carlos 5769985 "carlos@fecel.net" }
{ Luis 123456 "hp48g@mailcity.com" }
INFORM >>En este ejemplo se consideraron todos los parámetros. Se especificaron comentarios y tipos de datos en cada variable, numero de columnas y espacio entre las variables y su campo, valores que aparecen al borrar los campos y los valores por defecto
EJEMPLO 2 ( Obviando algunos parámetros ).
<< "Agenda"
{ {"Nombre:" "COLOQUE UN NOMBRE" }
{"Teléfono:" "NUMERO DE TELEFONO" }
{"E-mail:" "DIRECCION DE CORREO" }
}
{ }
{ }
{ }
INFORM >>En este otro ejemplo solo se consideraron los parámetro de los comentarios, y se ignoraron los restantes. Al no especificar ningún tipo de dato en cada variable, se está dando la libertad de colocar cualquier tipo de dato (número, carácter, lista, etc.).
EJEMPLO 3 ( Obviando todos los parámetros ).
<< "Agenda"
{ "Nombre:" "Teléfono" "E-mail:"}
{ }
{ }
{ }
INFORM >>En este último ejemplo no se consideró ningún parámetro. Esta es la forma más elemental, y la que ocupa menos espacio en memoria, de trabajar con el INFORM. En esta básica del INFORM, los nombres de cada variable se colocan en una sola lista, a diferencia de los ejemplos anteriores donde cada variable estaba en una lista diferente (esto debido a que cada variable contenía un comentario y tipo de dato asociado).
Una gran ventaja que posee la HP-48 es la posibilidad de trabajar los errores como condiciones, es decir, que si ocurre un determinado error en la ejecución de algún programa la calculadora puede tomar una decisión a raíz de ese evento, sin detener la ejecución de dicho programa.
El IFERR responde a la necesidad de poder controlar errores en la ejecución de programas. Esta estructura tiene gran semejanza con el IF y funciona de la siguiente manera:
SI
ocurre un ERROR (CONDICIÓN)
ENTONCESse
realiza una ACCIÓN
SINOse
ejecuta otra ACCIÓN
DIFERENTE
FIN
La sintaxis para esta estructura es la siguiente:
<< IFERR Bloque_de_instrucción o Programa
THEN Acción
ELSE Acción_Diferente
END >>El "IFERR" nos garantiza que si ocurre un error en la ejecución de un programa la calculadora realizará una acción, sino realizará otra. Esta estructura se puede trabajar como partición binaria (sintaxis anterior) o como partición simple, para realizar una acción si se genera un error o no hacer nada en caso contrario. La sintaxis para la partición simple es:
<< IFERR Bloque_de_instrucción o Programa
THEN Acción
END >>EJEMPLO:
<< IFERR "Suma de 3 Números"
{ ":N1:
:N2:
:N3 "
{1 0} } INPUT OBJ® + + "Suma" ®TAG
THEN CLEAR "ERROR DE EJECUCION" DOERR
END >>En este ejemplo se uso el programa de "Suma de 3 Números", del ejemplo de INPUT, para probar el funcionamiento del IFERR. Si ocurre un error en el programa de "Suma de 3 Números", bloque de instrucciones entre el IFERR y el THEN, se ejecutan las acciones de limpiar la pila (CLEAR) y generar un mensaje de error con el comando DOERR. Para que se produzca un error en programa solo hay que dejar de introducirle las variables y darle a ENTER, cuando el programa trate sumar los valores se encontrará con que no existen argumentos, y así se producirá el error.
Con esta sencilla sintaxis
del IFERR se puede controlar el funcionamiento de cualquier programa o
conjunto de instrucciones.
Cuando elaboramos un programa puede que nos interese presentar datos de salida para informar el resultado de alguna operación o proceso. Para realizar esto la calculadora dispone de comandos destinados para tal fin, y su uso depende de cómo se desee presentar los datos. Dentro de esos comandos se encuentran: DISP, MSGBOX Y PVIEW.
Este comando permite mostrar líneas de textos (no mayores de 22 caracteres) en la pantalla de la calculadora. Si la línea de texto se pasa de los 22 caracteres, la calculadora sustituye los caracteres siguientes por "...". Como el tamaño de cada letra es igual al tamaño real de las letras en la calculadora, solo se dispone de 7 líneas por pantalla. La sintaxis que se sigue para mostrar líneas de textos es la siguiente:
<< "LINEA DE TEXTO" #NUMERO_DE_LINEA DISP >>
EJEMPLO: << CLLCD "HOLA" 4 DISP -1 FREEZE >>Con el comando DISP se pueden mostrar líneas de texto en la pantalla de la calculadora, pero si la pantalla contenía algo previo la línea se escribirá sobre eso. Para evitar esto existe una instrucción que limpia la pantalla: CLLCD.
EJEMPLO CON WAIT: << CLLCD "HOLA" 4 DISP 0 WAIT DROP >>EL comando DROP se usa para eliminar el resultado que devuelve el WAIT al oprimir una tecla.
Con el comando DISP también se pueden mostrar varias líneas de textos al mismo tiempo, solo se tienen que colocar en una lista las líneas de texto y en otra lista sus respectivos números de líneas. Las sintaxis es la siguiente:
<< {"LINEA DE TEXTO 1" "LINEA DE TEXTO 2"}
{#NUMERO_DE_LINEA_1 #NUMERO_DE_LINEA_2 } DISP >>
EJEMPLO: << CLLCD { "HOLA" "AMIGO" } { 2 4 } -1 FREEZE >>Con esta sintaxis se pueden mostrar hasta 7 líneas de texto (de hasta 22 caracteres) por pantalla al mismo tiempo. Cada línea de texto debe tener asociado un número de línea en pantalla, para que pueda aparecer.
El comando MSGBOX permite crear cajas de diálogos en la calculadora. Estas cajas solo tienen como objeto el informar algún mensaje, por lo que solo se cierran oprimiendo la tecla de menú "OK". Para crear una caja de dialogo solo se tiene que usar esta sintaxis:
<< "TEXTO" MSGBOX >>
EJEMPLO: << CLLCD "HOLA" MSGBOX >>El comando CLLCD limpia la pantalla para que de fondo no salga nada. Si se omite, aparecerá de fondo lo que estaba antes de ejecutar MSGBOX.
Si se desea crear un efecto que impacte, se puede usar en conjunto el comando DISP y el comando MSGBOX. Combinándolos se puede obtener un fondo para una caja de diálogo.
EJEMPLO:
<< "@@@@@@@@@@@@@@@@@@@@@@" {1 2 3 4 5 6 7} DISP
"ATRAS ESTA UN FONDO" MSGBOX >>>Como fondo se puede utilizar cualquier combinación de caracteres de la calculadora.
Otra forma de mostrar datos e información en la calculadora es usando gráficos. Cualquier dato se puede convertir (sea del tipo que sea) al formato de gráficos de la calculadora, es decir a un GROB, y luego mostrarlo por pantalla. Los comandos usados para convertir y mostrar gráficos por pantalla son ®GROB, PICT, REPL, PVIEW y ®LCD entre otros.
Este comando nos permite convertir cualquier tipo de objeto a un grob de la HP. Para usar este comando se usa la siguiente sintaxis:
<< Objeto_en_Pila #Tamaño_de_la_letra ®GROB >>
|
|
|
|
|
|
|
|
|
|
El tipo de Grob 0 nos
permite crear grobs de ecuaciones, los cuales se mostrarán como
si fuese desplegado por el Equation Writer de la HP.
EJEMPLO: << "Saludos Amigos" 2 ®GROB >>Este ejemplo convierte el string en un grob de fuente 2, para tratarse como un objeto gráfico.
Este comando nos permite cargar un grob entero en la pantalla gráfica de la HP, o traer un grob entero desde la pantalla gráfica a la pila. Para cargar un grob en la calculadora desde la pila se usa la sintaxis << Grob PICT STO >> donde Grob indica que se tiene que tener un grob en la pila. Para traer un grob a la pila se usa esta otra sintaxis << PICT RCL >>.
EJEMPLOS PARA CARGAR UN GROB
1. << "Saludos Amigos" 1 ®GROB PICT STO >>
2. << "Saludos Amigos" 2 ®GROB PICT STO >>
3. << 'A+B=C' 0 ®GROB PICT STO >>
EJEMPLO PARA TRAER UN GROB A LA PILA
Para traer un grob a la pila solo se tiene que usar << PICT RCL>>.
De nada nos sirve colocar un grob en la pantalla gráfica si no lo podemos ver. Para visualizar un grob cargado en pantalla se usa el comando PVIEW. La sintáxis usada para que se pueda ejecutar es la siguiente:
<< -40 CF {#X #Y} PVIEW >> ó << -40 CF{}PVIEW >>
EJEMPLOS:
1. << -40 CF "SALUDOS AMIGOS, ¿COMO ESTAN?" 1 ®GROB
PICT STO {#0d #0d}PVIEW 0 WAIT DROP >>
2. << -40 CF "Saludos Amigos" ¿Cómo están? 2 ®GROB
PICT STO {#0d #0d}PVIEW 0 WAIT DROP >>
3. << -40 CF 'A+B=C' 0 ®GROB PICT STO {}PVIEW >>REPL
Bueno, ya podemos cargar un grob a la pantalla y verlo, pero ahora queremos que el grob mostrado actualmente varíe agregándole otro grob. Para esto la HP posee un comando llamado REPL. La sintáxis usada es la siguiente:
<< PICT {#X #Y} Grob_en_la_pila REPL >>
EJEMPLO:
<< -40 CF "SALUDOS AMIGOS, ¿COMO ESTAN?" 1 ®GROB
PICT STO {#0d #0d} PVIEW 1 WAIT
PICT {#10d #10d} "ESTAMOS BIEN" 1 ®GROB REPL
0 WAIT DROP >>REPL también se puede usar para insertar un subgrob en una sección de un grob que este en la pila. Para hacer esto se usa el comando de la siguiente forma
<< Grob_destino {#X #Y} Grob_en_la_pila REPL >>
EJEMPLO:
<< -40 CF "SALUDOS AMIGOS, ¿COMO ESTAN?" 1 ®GROB
PICT STO PICT RCL {#10d #10d} "ESTAMOS BIEN" 1 ®GROB
REPL PICT STO {#0d #0d} PVIEW 0 WAIT DROP >>El comando REPL no solo sirve para insertar un grob al grob mostrado en la pantalla actualmente o a un grob que esté en la pila, sino que también sirve para insertar un elemento a una cadena de String, a una lista, a un vector o a una matriz. Para usar el comando REPL con estas intenciones, consulte el manual de la calculadora.
Si lo deseamos
podemos usar una sección rectangular de un grob, extrayéndola
de un grob mostrado en pantalla o que este en la pila. Para hacer esto
se usa el comando SUB con la siguiente sintáxis:
<< Grob_en_la_pila {#X1 #Y1}{#X2 #Y2} SUB >>
<< PICT RCL Grob_en_la_pila {#X1 #Y1}{#X2 #Y2} SUB >>
<< -40 CF "SALUDOS AMIGOS, ¿COMO ESTAN?" 1 ®GROB
PICT STO {#0d #0d} PVIEW 1 WAIT
PICT {#10d #10d} "ESTAMOS BIEN" 1 ®GROB REPL
PICT RCL {#10d #10d} {#70d #20d} SUB 0 WAIT DROP>>Al terminar de ejecutarse este programa, en la pila quedará un grob de 61x11, que contiene la frase "ESTAMOS BIEN". Si se desea se puede cargar a la pantalla y verse posteriormente.
Estos comandos sirven para mostrar un grob que esté en la pila (®LCD) o llevar a un grob lo que se esté mostrando en la pantalla actualmente (LCD®). La sintáxis para los comandos son las siguientes:
<< Grob_en_la_pila ®LCD >>
<< LCD® >>
EJEMPLO DE ®LCD:
<< "SALUDOS AMIGOS, ¿COMO ESTAN?" 1 ®GROB ®LCD >>
[ Anterior
página de User-RpL ]
[ Ir
al Curso de System-Rpl ] [ Ir
al Curso de Librerías ]