Tema 7 Programación modular Programación básica Profesora: Magdalena Aguilar-Álvarez
Procedimientos y funciones Universidad Hispanoamericana Programación básica Pascal ofrece dos herramientas básicas para pr...
Parámetros Universidad Hispanoamericana Programación básica Los parámetros que se usan en la correspondiente invocación al...
Parámetros por valor y por variable Universidad Hispanoamericana Programación básica Paso por valor: el subprograma hace u...
Declaraciones locales y globales Universidad Hispanoamericana Programación básica Todos los objetos (constantes, tipos, va...
Universidad Hispanoamericana Programación básica Efectos laterales <ul><li>La transferencia de información entre programas...
Universidad Hispanoamericana Programación básica Estructura, declaración y empleo de un procedimiento Los subprogramas se ...
Llamada o invocación a un procedimiento Universidad Hispanoamericana Programación básica Se realiza desde el programa prin...
Estructura, declaración y empleo de una función Universidad Hispanoamericana Programación básica Es identica a un procedim...
Llamada a una función Universidad Hispanoamericana Programación básica Pascal trata a la llamada de la función como un val...
Parámetros variables en funciones Universidad Hispanoamericana Programación básica El paso de parámetros a funciones se ha...
RECURSIVIDAD Universidad Hispanoamericana Programación básica Un objeto es recursivo, cuando tiene la capacidad de definir...
Tipos de procedimiento Universidad Hispanoamericana Programación básica Los procedimientos se pueden definir como objetos ...
Ejercicios Universidad Hispanoamericana Programación básica
Ejercicios Universidad Hispanoamericana Programación básica
Universidad Hispanoamericana Programación básica
Universidad Hispanoamericana Programación básica
Universidad Hispanoamericana Programación básica
Universidad Hispanoamericana Programación básica
Universidad Hispanoamericana Programación básica
Ejercicios propuestos Universidad Hispanoamericana Programación básica Problemas 22 a 35 del documento procedimientos func...
Muchas gracias
Próxima SlideShare
Cargando en…5
×

Tema 7

960 visualizaciones

Publicado el

Funciones y procedimientos

Publicado en: Educación, Tecnología, Viajes
0 comentarios
2 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
960
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
79
Comentarios
0
Recomendaciones
2
Insertados 0
No insertados

No hay notas en la diapositiva.

Tema 7

  1. 1. Tema 7 Programación modular Programación básica Profesora: Magdalena Aguilar-Álvarez
  2. 2. Procedimientos y funciones Universidad Hispanoamericana Programación básica Pascal ofrece dos herramientas básicas para programación descendente: Procedure y Function. Las funciones, por lo general, devuelven un solo valor a la unidad de programa o subprograma que los referencia. Los procedimientos pueden devolver cero, uno o varios valores. En caso de no devolver algún valor, realiza alguna tarea tal como alguna operación de entrada o salida. A un nombre de procedimiento no se puede asignar un valor. Una función se referencia usando su nombre en una expresión, mientras que un procedimiento se referencia por una llamada o invocación al mismo.
  3. 3. Parámetros Universidad Hispanoamericana Programación básica Los parámetros que se usan en la correspondiente invocación al subprograma se llaman actuales, reales o argumentos , son los que entregan la información al subprograma. Los parámetros que reciben la información en el subprograma, se llaman formales o ficticios y se declaran en la cabecera del programa. Algunos procedimientos carecen de parámetros. En una llamada al subprograma tiene que verificarse que: El número de parámetros formales debe ser igual al de actuales. Los parámetros que ocupen el mismo orden en cada una de las listas deben ser compatibles en tipo.
  4. 4. Parámetros por valor y por variable Universidad Hispanoamericana Programación básica Paso por valor: el subprograma hace una copia del valor en memoria, igual en valor pero distinta en ubicación que el original. Es un canal de comunicación solamente de ingreso al subprograma, es decir, si durante la ejecución el parámetro original se modifica, el parámetro del subprograma no se verá alterado. Paso por variable: es una referencia al parámetro formal, queda asociado a la misma posición de memoria que su correspondiente parámetro actual, cualquier modificación le afectará. Conclusión Si no se quiere que un subprograma altere el valor del parámetro actual, es decir, de una variable del programa principal debemos realizar paso por valor. Si se quiere que el subprograma altere el valor de un parámetro actual tenemos que pasarlo por variable o referencia. No se permite en este caso una constante o expresión, puesto que estas no pueden variarse.
  5. 5. Declaraciones locales y globales Universidad Hispanoamericana Programación básica Todos los objetos (constantes, tipos, variables) declarados en el programa principal son de dominio global del programa, por tanto, son reconocidos en el ámbito del subprograma. Los objetos creados en el subprograma para su uso exclusivo son inaccesibles para el programa principal o llamador, es decir, tienen ambito local y solo tendrán vigencia dentro del cuerpo de sentencias del subprograma y para cualquier otro interno a este. Los parámetros formales de un subprograma se comportan como variables locales y solo pueden ser utilizados en el ámbito del cuerpo de sentencias del subprograma.
  6. 6. Universidad Hispanoamericana Programación básica Efectos laterales <ul><li>La transferencia de información entre programas y subprogramas solo tendrá lugar a través de la lista de parámetros. </li></ul><ul><li>Si se necesita información almacenada en una variable global para la ejecución de un subprograma debe habilitarse al declaración del correspondiente parámetro formal y nunca referenciarse directamente. </li></ul><ul><li>Cuando el subprograma encuentre un identificador de variable procederá de la siguiente forma: </li></ul><ul><li>Primero buscará en su lista de variables locales. </li></ul><ul><li>Si no la encuentra procederá a buscarla en su lista de parámetros formales. </li></ul><ul><li>Si no la encuentra buscará en la lista de variables globales de ámbito superior en la jerarquía de módulos, hasta llegar a la lista de variables globales del programa principal. </li></ul><ul><li>Si no está ahí, entonces se producirá un error de compilación y tendrá que revisarse la declaración de variables, en el orden escrito. </li></ul>
  7. 7. Universidad Hispanoamericana Programación básica Estructura, declaración y empleo de un procedimiento Los subprogramas se declaran inmediatamente después de las variables del programa principal, teniendo la precaución de que si un subprograma llama a otro, el llamado o referenciado debe declararse primero. Parámetros formales Se encierran entre paréntesis, indicando el identificador, luego :, y el tipo de cada uno, separados por punto y coma unos de otros. La palabra VAR reservada precede a un identificador de parámetro indicando que el paso es por variable, su ausencia indica que es por valor.
  8. 8. Llamada o invocación a un procedimiento Universidad Hispanoamericana Programación básica Se realiza desde el programa principal, indicando el identificador del procedimiento seguido de la lista de parámetros actuales encerrados entre paréntesis y separados por comas. Nota: los nombres de los parámetros formales y actuales, es recomendable que sean distintos para evitar confusiones. Lo importante es recordar que la correspondencia de parámetros viene dada por el lugar que ocupan y no por el nombre.
  9. 9. Estructura, declaración y empleo de una función Universidad Hispanoamericana Programación básica Es identica a un procedimiento, pero la función devuelve un valor de tipo simple, pascal también permite tipo cadena. Tienen la misma estructura. Luego de la definición de los parámetros se debe indicar el tipo de datos que devuelve, que corresponderá al ultimo valor que se le asignó. El identificador de la función debe estar situado a la izquierda de por lo menos una sentencia de asignación.
  10. 10. Llamada a una función Universidad Hispanoamericana Programación básica Pascal trata a la llamada de la función como un valor, por lo que puede aparecer en los mismos sitios en que pueda aparecer un valor, por ejemplo asignación a una variable, componente de una expresión, sentencia de salida, etc.
  11. 11. Parámetros variables en funciones Universidad Hispanoamericana Programación básica El paso de parámetros a funciones se hará siempre por valor, puesto que al devolver un único valor, no es necesario cambiar los argumentos. ¿Funciones o procedimientos? Deben utilizarse funciones cuando solo tenga que devolverse un solo valor simple, es decir, no estructurado al programa principal. En todos los demás casos se deben usan procedimientos. Funciones de biblioteca
  12. 12. RECURSIVIDAD Universidad Hispanoamericana Programación básica Un objeto es recursivo, cuando tiene la capacidad de definirse en función de sí mismo. El mejor ejemplo lo constituye el factorial (n!= n * (n-1)!), la potencia de una base con exponente entero (B e = B*B e-1 ), la suma de un conjunto de n numeros, etc. Pascal permite que los procedimientos o funciones se llamen a sí mismos, es decir que sean recursivos, aunque esto consume más recursos de la máquina. Un llamado a un procedimiento recursivo no es más que una llamada a una copia de sí mismo. Cada copia se comporta como un procedimiento independiente ya que las variables locales y los parámetros correspondientes, existen de modo distinto en cada una de las llamadas.
  13. 13. Tipos de procedimiento Universidad Hispanoamericana Programación básica Los procedimientos se pueden definir como objetos y asignarse a variables de forma que puedan pasarse como parámetros. Esto permite que la sintaxis de escritura de los tipos de procedimientos y funciones sea similar a la de otros tipos de datos, excepto que se omite el identificador que es el nombre del procedimiento, ya que este se pasa como parámetro, y solo se especifican los parámetros formales.
  14. 14. Ejercicios Universidad Hispanoamericana Programación básica
  15. 15. Ejercicios Universidad Hispanoamericana Programación básica
  16. 16. Universidad Hispanoamericana Programación básica
  17. 17. Universidad Hispanoamericana Programación básica
  18. 18. Universidad Hispanoamericana Programación básica
  19. 19. Universidad Hispanoamericana Programación básica
  20. 20. Universidad Hispanoamericana Programación básica
  21. 21. Ejercicios propuestos Universidad Hispanoamericana Programación básica Problemas 22 a 35 del documento procedimientos funciones.pdf Páginas 146
  22. 22. Muchas gracias

×