Publicado el 31 de Julio del 2017
685 visualizaciones desde el 31 de Julio del 2017
54,0 KB
3 paginas
Introducción a la Programación I
1
Pascalito
Introducción
Pascalito es una unidad de Pascal que provee los tipos “Pila” y “Fila” y un conjunto
instrucciones para poder trabajar con ellos.
A continuación se especificarán informalmente las instrucciones (también llamadas
procedimientos o funciones) explicando brevemente qué son las pilas y las filas como
modelo teórico.
Utilizando la Pascalito en nuestros programas
Para poder utilizar los tipos e instrucciones de Pascalito, se debe incluir la unidad “Es-
tructu” en la cláusula “Uses”, que va inmediatamente después de la cláusula “Pro-
gram”.
Program MiPrograma;
Uses Estructu;
...
Consideraciones generales
Las pilas y filas de Pascalito contienen elementos del tipo “Integer”. Un Integer es un
número entero, dentro de un dominio que va del -32768 al 32767 inclusive.
Las instrucciones están implementadas mediante procedimientos y/o funciones, por lo
tanto las invocaciones se escribirán de la forma siguiente:
<Nombre de la Instrucción> (< Parámetros >)
Cuando se diga que una instrucción devuelve algo utilizaremos:
<Nombre de la Intrucción> (< Parámetros>) → <Tipo del Resultado>
Los tipos posibles para los parámetros son <Pila>, <Fila>, <Integer>, <Lista de Inte-
gers>.
Introducción a la Programación I
2
Las pilas en Pascalito
Introducción teórica
La pila es básicamente una lista de elementos. La pila sólo nos da acceso a uno
de sus extremos denominado "tope". Como consecuencia tanto la inserción como
la extracción de elementos se realizan en el tope. Este comportamiento lleva a
que el modelo también se llame LIFO ("last in, first out" = "último en entrar pri-
mero en salir").
Inserción
Extracción
TOPE
e1
e2
...
BASE
en-1
en
El tipo "Pila" permite trabajar con las pilas que implementa Pascalito. Las instrucciones
(procedimientos y funciones) para manipularlas son:
•
inicPila (<Pila>, '<Lista de Integers>')
Inicializa a la pila con los elementos dados en <Lista de Integers>.
Los elementos deben separarse utilizando espacios. Se permite que la lista esté va-
cía ('') con lo que la pila se inicializará en vacío (sin ningún elemento).
• pilaVacia (<Pila>) → <Verdadero / Falso>
•
Devuelve Verdadero si la pila no tiene elementos, de lo contrario retorna Falso.
tope (<Pila>) → <Integer>
Devuelve el valor del elemento que está en el tope de la pila.
• desapilar (<Pila>) → <Integer>
Devuelve el elemento que está en el tope de la pila y lo elimina de la misma.
Luego de llamar a desapilar, el elemento que estaba después del elemento extraído
pasará al tope o la pila se vaciará si éste era el último.
Si se llama a desapilar con una pila vacía como parámetro se producirá un error y
se abortará el programa.
• apilar (<Pila>, <Integer >)
Pone el elemento <Integer > al tope de la pila.
Si se llama a apilar con una pila llena (con una cantidad de elementos igual a MAX-
PASCALITO) se producirá un error y se abortará el programa.
readPila (<Pila>)
•
Inicializa a la pila con los elementos ingresados por el usuario (a través de la línea
de comandos de la consola).
Los elementos deben ingresarse separados por espacios. El ingreso se finaliza pre-
sionando la tecla "Enter" (o "Return"). Se permite que la lista esté vacía con lo que
la pila se inicializará en vacío.
• writePila (<Pila>)
Muestra el contenido de la pila.
Introducción a la Programación I
3
Las filas en Pascalito
Introducción teórica
La fila (también llamada cola) es una lista de elementos, al igual que la pila. La
particularidad de las filas es que realizan la inserción de elementos en un extre-
mo, mientras que las extracciones se llevan a cabo en el otro. Concretamente,
las extracciones se realizan al comienzo de la lista (conocido como “frente” de la
cola) y las extracciones al final de la misma. Debido al comportamiento descrip-
to, este modelo también es conocido como FIFO (“first in, first out” = “primero
en entrar, primero en salir”).
FRENTE
FINAL
Inserción
e1
e2
Extracción
...
en-1
en
El tipo "Fila" permite trabajar con las filas que implementa Pascalito. Las instrucciones
(procedimientos y funciones) para manipularlas son:
•
•
inicFila (<Fila>, '<Lista de Integers>')
Inicializa a la pila con los elementos dados en <Lista de Integers>.
Los elementos deben separarse utilizando espacios. Se permite que la lista esté va-
cía ('') con lo que la fila se inicializará en vacío (sin ningún elemento).
filaVacia (<Fila>) → <Verdadero / Falso>
Devuelve Verdadero si la fila no tiene elementos, de lo contrario retorna Falso.
• primero (<Fila>) → <Integer >
Devuelve el elemento que está en el frente de la fila.
• extraer (<Fila>) → <Integer >
Devuelve el elemento que está en el frente de la fila y lo elimina de la misma.
Luego de llamar a extraer, el elemento que estaba después del elemento extraído
pasará al frente o la fila se vaciará si este era el último.
Si se llama a extraer con una fila vacía como parámetro se producirá un error y se
abortará el programa.
• agregar (<Fila>, <Integer >)
•
Pone el elemento al final de la fila.
Si se llama a agregar con una fila llena (con una cantidad de elementos igual a
MAXPASCALITO) se producirá un error y se abortará el programa.
readFila (<Fila>)
Inicializa a la fila con los elementos ingresados por el usuario (a través de la línea
de comandos de la consola).
Los elementos deben ingresarse separados por espacios. El ingreso se finaliza pre-
sionando la tecla de "Enter" (o "Return"). Se permite que la lista esté vacía con lo
que la fila se inicializará en vacío.
• writeFila (<Fila>)
Muestra el contenido de la fila.
Comentarios de: Pascalito (0)
No hay comentarios