LPR GRUPO_28

Este Blog ha sido creado para el seguimiento de la asignatura LPR por parte del grupo 28 cuyos miembros son: LMALVAREZ, pachon, RRLOPEZ. Un saludo.

jueves, enero 11, 2007

Abstracción funcional en pascal



Tipo de subprograma

Los subprogramas en pascal son de dos tipos: procedimientos y funciones.

Procedimientos: Al ejecutar un procedimiento se crean en memoria las constantes y variables de la parte de declaración, pero después de que se haya terminado el procedimiento desaparecen, lo cual supone un ahorro de memoria. Puede recibir cero o más valores del programa que llama y devolver cero o más valores al programa que realizó la llamada.

Declaración:

Es obligatorio declararlos y deben ser declarados antes de que puedan ser referenciados en el cuerpo del programa.

Procedure nombreproc(parámetros);

Declaraciones locales

Begin

Cuerpo del procedimiento

End;

Con frecuencia los procedimientos necesitan que se les dé uno o más valores, que se conocen como parámetros. Estos se incluyen en la cabecera, dentro de los paréntesis que siguen al identificador.

Funciones: La diferencia entre un procedimiento y una función es que el identificador de una función asume un valor cuando la función ha terminado y devuelve este valor a la rutina que la llamó en sustitución del nombre de la función. En un sentido amplio el nombre de la función es también una variable.

Todo lo indicado previamente respecto a la definición de los procedimientos se aplica a las funciones.

Function nombrefuncion ( Parámetro : tipo parámetro) ; tipo dato devuelto

Declaraciones locales

Begin

Cuerpo función

Return o actualización de la variable a la que se le asigne la función

End;

PASO DE PARÁMETROS:

Tanto en funciones como procedimientos se pueden pasar por valor o por referencia.

Paso por valor: se transfiere una copia del valor del parámetro actual al procedimiento, el procedimiento no accede a la variable real y por lo tanto no puede modificarla. Un procedimiento puede cambiar el valor de un parámetro por valor, pero a la vuelta al programa queda sin modificar el valor actual del parámetro original.

Paso por referencia: el parámetro actual debe ser una variable o una constante con tipo. Delante de la declaración del parámetro formal hay que poner la palabra clave Var. De este modo quedaría modificado el valor de la variable pasada por referencia.

Subprogramas como parámetros:

Algunas versiones de Pascal permiten pasar subprogramas como parámetros: junto con el nombre del subprograma se incluye la lista de parámetros formales.

Sobrecarga de subprogramas: Es posible realizar sobrecarga de funciones y procedimientos. O sea declarar funciones con el mismo nombre pero que difieren en los parámetros o el tipo de valor que devuelven. Según el tipo de parámetros que se le pasen llamará a la función original o a la sobrecargada.

Subprogramas polimórficos: En pascal no es posible crear subprogramas polimórficos.

Enlaces:

http://www.wikilearning.com/subprogramas_en_pascal-wkccp-3633-3.htm

http://www.mailxmail.com/curso/informatica/pascal/capitulo15.htmç

http://www.programacion.com/blogs/21_pascal_y_turbo_vision/archive/688_el_compilador_freepascal.html