Está en la página 1de 45

INFORMTICA I

UNIDAD IV

FUNCIONES

Generalidades
Para resolver problemas complejos y/o de gran tamao es conveniente utilizar el concepto de reduccin de problemas. De esta forma, el problema se descompone en subproblemas, los cuales a su vez se descomponen en subsubproblemas, y as continuar hasta que el problema original queda reducido a un conjunto de actividades bsicas.

Generalidades
La solucin de cada una de estas actividades bsicas permite luego la solucin del problema final. En el lenguaje C la solucin del problema se expresa por medio de un programa, y la solucin de un subproblema por medio de una funcin.

Generalidades
Generalmente un programa en C est constituido por un programa principal y un conjunto de funciones. La llamada a una funcin indica al procesador que debe continuar con el procesamiento de la funcin, una vez que esta concluye, el control regresa al programa principal. Una funcin puede incluir llamadas a otras funciones.

Ventajas del uso de funciones


Facilitan la lectura y escritura de los programas. Permiten el trabajo en paralelo, es decir que distintos programadores se pueden encargar de diferentes funciones. Permiten que el cdigo de una funcin se escriba una vez y se utilice cuando sea necesario. Facilitan el mantenimiento de los programas.

La comunicacin entre el programa principal y la funciones, al igual que entre funciones, se lleva a cabo por medio de: Variables globales. Parmetros por valor. Parmetros por referencia.

TIPOS DE VARIABLES
Variables globales: Son objetos definidos antes del inicio del programa principal. Su alcance es muy amplio ya que tienen influencia tanto en el programa principal como en las funciones.

TIPOS DE VARIABLES
Variables locales: Son objetos definidos tanto en el programa principal como en las funciones. Su alcance est limitado solamente al programa principal o a la funcin en la cual estn definidas.

TIPOS DE VARIABLES
Variables locales: Puesto que no retienen su valor, deben ser inicializadas cada vez que se ejecuta la funcin. Tienen prioridad sobre las variables globales.

EJEMPLO

EJEMPLO

TIPOS DE VARIABLES
En una funcin con una variable local, si se quiere hacer referencia a una variable global que tiene el mismo nombre, hay que incorporarle previamente a esta ltima el smbolo :: (doble dos puntos)

EJEMPLO

EJEMPLO

TIPOS DE VARIABLES
Variables estticas: Son similares a las locales pero conservan su valor durante la ejecucin del programa. Sintaxis: static tipo de dato nombre = valor; Ejemplo: static int K = 4;

ETAPAS RELACIONADAS CON EL USO DE UNA FUNCIN

Definicin: Prototipo
Consiste en una instruccin que va antes de la funcin principal en la cual se enuncia un prototipo de la funcin. Se informa al compilador la existencia de una funcin que se utilizar posteriormente.

Sintaxis del Prototipo


Tipo resultado Nombre (Tipo/s de Parmetro/s); Tipo resultado: Representa el tipo de resultado que devuelve la funcin. Si no devuelve ningn resultado se coloca void. Nombre de la Funcin: Es conveniente colocar un nombre representativo de la tarea que realiza. Tipo/s de Parmetro/s: Representa el/los tipo/s de dato/s del parmetro/s que recibe la funcin. Si no hay parmetros se coloca void.

Llamada
Es cuando se activa (llama) la funcin para que realice su tarea. Dicha llamada puede ser en una instruccin exclusiva o formando parte de otra instruccin.

Sintaxis de la Llamada
Nombre (Parmetro/s);

Ejemplos
... Lectura (Mat, Tam); /*Llamada en una instruccin exclusiva*/ printf (El cubo es: %d, cubo()); /* Llamada formando parte de otra instruccin*/ ...

Declaracin
Consiste en una serie de instrucciones que va despus de la funcin principal y que conforman el subprograma que resuelve la tarea.

Sintaxis de la Declaracin
Tipo resultado Nombre (Tipo/s de Parmetro/s y Parmetro/s) { ... Instrucciones; /* Cuerpo de la funcin*/ ... }

Comunicacin entre el programa principal y la funciones por medio de

VARIABLES GLOBALES

Ejemplo

Ejemplo

Ejemplo

Comunicacin entre el programa principal y la funciones por medio de

VARIABLES POR VALOR

PARMETROS POR VALOR


Los parmetros por valor permiten pasar datos entre el programa principal y las funciones. En el parmetro se escribe una copia de la variable original. Si el parmetro sufre una alteracin en la funcin que lo recibe, la variable original no se ve afectada.

Resumen
Sintaxis del Prototipo Tipo resultado Nombre (Tipo/s de Parmetro/s);
Ejemplo: int cubo (int);

Sintaxis de la Llamada Nombre (Parmetro/s);


Ejemplo: Cub = cubo (I);

Resumen
Sintaxis de la Declaracin Tipo resultado Nombre (Tipo/s de Parmetro/s y Parmetro/s) { Instrucciones; }
Ejemplo: int cubo (int K) { return (K*K*K); }

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

Ejemplo

También podría gustarte