Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porAdolfo Ramos Salinas Modificado hace 8 años
1
Modularización (Funciones) Prof. Miguel Vélez Rubio
2
Función o Módulo main() Tomado de Gaddis
3
Funciones que Devuelven un Valor int main() {... return 0; } double average() {... avg = (v1+v2)/2; return avg; }
4
Funciones que Devuelven un Valor Ejemplos de llamadas: Discutidos: valorNuevo = sqrt(16); otroValor = valorNuevo + pow(2, 5); Creada: prom = average();
5
Funciones o Módulos que No Devuelven Valor void presentarTitulos() {... } void leerDatos() {... }
6
Funciones o Módulos que No Devuelven Valor Ejemplos de llamadas: presentarTitulos(); leerDatos();
7
Prototipo de Funciones (Declaración de Funciones) Se declaran antes del main() de la siguiente manera: double average(); void presentarTitulos(); void leerDatos();
8
Prototipo de Funciones Tomado de Gaddis
9
Prototipo de Funciones Tomado de Gaddis
10
Paso de argumentos a funciones En pseudocódigo hacíamos llamadas con argumentos así: Execute CalcularPromedio(valor1, valor2, prom) Para invocar módulos construídos así: Module CalcularPromedio(In v1, v2:real, Out p:real) …
11
Paso de argumentos a funciones Los parámetros en los módulos se declaran: In: Sólo se reciben sin devolverlos (v1 y v2) Out: Se devuelven tras asignarles algún valor (p) In/Out: Se reciben con algún valor el cual cambia y se devuelve cambiado
12
Parámetros Tipo In Se les llama parámetros por valor (by value)
13
Ejemplo Por Valor En el prototipo: void PresentarResultados(int, double); En módulo que llama (Ejemplo: main()) PresentarResultados(unidades, costo); En definición del módulo: void PresentarResultados(int units, double cost) { … }
14
Ejemplo Por Valor Tomado de Gaddis
15
Ejemplo Por Valor Tomado de Gaddis
16
Parámetros Tipo Out o In/Out Se les llama parámetros por referencia (by reference)
17
Ejemplo Por Referencia En el prototipo: void LeerDatos(int &, double &); En módulo que llama (Ejemplo: main()) LeerDatos(valor1, valor2); En definición del módulo: void LeerDatos(int &v1, double &v2) { … }
18
Ejemplo Por Referencia Tomado de Gaddis
19
Ejemplo Por Referencia Tomado de Gaddis
20
Ejemplo Combinado En el prototipo: void CalcularPromedio(double, double, double &); En módulo que llama (Ejemplo: main()) CalcularPromedio(valor1, valor2, prom); En definición del módulo: void CalcularPromedio(double v1, double v2, double &p) { … }
21
El Mismo Ejemplo con Función que Regresa un Valor En el prototipo: double CalcularPromedio(double, double); En módulo que llama (Ejemplo: main()) prom = CalcularPromedio(valor1, valor2); En definición del módulo: double CalcularPromedio(double v1, double v2) { return (v1+v2)/2; }
22
Variables y Constantes Locales Son todas aquellas variables o constantes que declaramos y utilizamos dentro de un módulo o función Esto incluye a main() o a cualquier función definida por el usuario Su tiempo de vida está dado desde el instante en que se declara hasta el final de la función en donde haya sido definida
23
Ejemplos de Variables Locales int main() { int num1, num2; int prod; char letter; … } Todas estas variables son locales a main()
24
Ejemplos de Variables Locales int main() { int num1, num2; … FuncionTal(); } void FuncionTal() { double x; boolean s; … } num1 y num2 son locales a main() x y s son locales a FuncionTal()
25
Variables y Constantes Globales Son todas aquellas variables o constantes que declaramos al principio de un programa antes de la función main() Su tiempo de vida está dado desde el instante en que se declara hasta el momento en que deje de ejecutar el programa Pueden ser utilizadas en cualesquiera de las funciones del programa y nunca pierden su valor al ser utilizadas en funciones distintas salvo los cambios que se hagan en sí a una variable
26
Ejemplo Combinado const double PI = 3.14159; void FuncionTal(); int main() { int num1, num2; … num2 = num1 * PI; FuncionTal(); } void FuncionTal() { double x; … cout << (x * PI); } num1 y num2 son locales a main() x es local a FuncionTal() PI es visible en todos
27
Discusión de Problema … y Práctica Dirigida
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.