FUNCIONES Y PROCEDIMIENTOS

Slides:



Advertisements
Presentaciones similares
Procedimientos y Funciones
Advertisements

Programacion de Computadora Prof. Obadiah Oghoerore.
Programación, Algoritmos y Estructuras de Datos
Funciones. Programación, Algoritmos y Estructuras de Datos.
INFORMATICA I Funciones CLASE 13.
Programación en C (Segunda Parte) DATSI, FI, UPM José M. Peña
Prof. Franklin Cedeño. FUNCIONES EN C++ Cuando tratamos de resolver un problema, resulta muy útil utilizar la filosofía de “divide y vencerás”. Esta estrategia.
Programación Estructurada
SOBRECARGA DE FUNCIONES
Unidad 3 Punteros.
Ejemplos en C /* Ejemplos L/E en C con printf y scanf */ #include #include main(){ int i; int i; char nombre[30]; char nombre[30]; printf ("\nIntroduce.
Funciones “En C” Semestre de Otoño 2006 Claudio Gutiérrez-Soto.
Funciones y procedimientos
FUNCIONES EN C.
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.
El lenguaje de programación C - Funciones -
Programa “Coordenadas” Ing. Arturo Díaz Vargas Departamento de Sistemas División de Ciencias Básicas e Ingeniería UNIVERSIDAD AUTONOMA METROPOLITANA.
Asignatura: Lenguaje de Programación de Sistemas PPT No.05 Programa vespertino de Ingeniería (E) en Sistemas Computacionales Profesor: José Estay Araya.
Semana 5 Subprogramas..
FUNCIONES EN C. SOBRE FUNCIONES... Caja negra in_1 in_N out_1 In_2 Función: Nombre. (Con el cual es invocada). Entradas. (Parámetros de la función). Salida.
FUNCIONES EN C.
Aplicado a programas openMP
TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para.
Ejemplos openMP.
Programación de Memoria Compartida
Descomposición Modular. Funciones
Introducción a los punteros Prof. Domingo Hernández.
FUNCIONES Conceptos básicos. Retorno de una función Clases de funciones. Paso de parámetros. Funciones y arrays.
Informática Ingeniería en Electrónica y Automática Industrial
Recursividad (2 clases) 1. Nivelación Funciones Menú Vectores String
Trazado. 1 Intercambio sin error #include void intercambio(int *, int *); /* prototipo */ main(){ int a=1,b=2; printf("a=%d b=%d\n",a,b); intercambio(&a,&b);
Radio Volumen esfera m. m #include.
INTRODUCCION A LA PROGRAMACION
LENGUAJE “C” Programación.
Algoritmo.
CLASE 10. AGENDA 1 Repaso 2 Operadores 3 Directivas 14 Entrada y Salida de Datos.
Clase 1 Gabriela Araya Baez.. Char: Variable que almacena caracteres. Int: Variable que almacena enteros. Float: Variable que almacena decimales. Doble:
 Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman unos valores de entrada, llamados parámetros y proporcionan.
TIPOS DE DATOS Estructuras de control y repetición PARCIAL III.
TIPOS DE DATOS PARCIAL III Punteros. Un puntero es una variable que hace referencia a una dirección de memoria Sintaxis: Tipo_Dato *nombre_variable_puntero;
Introducción al Lenguaje C (II) Cadenas de caracteres, archivos de cabecera, lectura y escritura Fundamentos de Programación Departamento de Lenguajes.
AYUDANTÍA 2 Lenguaje Imperativo y Java. Punteros Dirección a memoria (puede apuntar a NULL). Permite trabajar con memoria (variables dinámicas de heap).
Computación I :: Prof. Yeniffer Peña Lenguaje C Presentación Computación I.
Sistemas Operativos Unidad 8 Señales y funciones de tiempo.
El lenguaje de Programación C Fernando J. Pereda.
LENGUAJE C. El lenguaje de programación C  El C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell  Evolución.
PROGRAMACIÓN ORIENTADA A OBJETOS SEGUNDA UNIDAD: “CLASES, OBJETOS Y MÉTODOS” IRVING YAIR SALAS CHÁVEZ ING. EN SISTEMAS COMPUTACIONALES - ITSLP.
Funciones en lenguaje C 2 Funciones Definición: – Las funciones son los bloques de construcción básicos de C. Dentro de ellas se da toda la actividad.
Programación en C - manejo de Archivos
Arreglos y cadenas de texto
Programación 1 Curso: 5to. I TT
Entrada / Salida Streams Archivos
Programación en C - manejo de Archivos
Métodos y parámetros.
Informática Ingeniería en Electrónica y Automática Industrial
Guía teórica de manejo de estructuras de datos
Variables Automáticas y Apuntadores
Introducción a funciones En ciencias de la computación, el término dividir y conquistar hace referencia a uno de los más importantes paradigmas de diseño.
Estructura Básica de Un programa en C++
LENGUAJE DE PROGRAMACION III Estructuras Estáticas de Datos
LENGUAJE C.
Características de “C”
Fundamentos de Informática Especialidad de Electrónica –
Curso de Programación Estructurada
Algunas Características de C++ no presentes en C
Puntero #include int main(int argc, char *argv[]) { int myVar = 378; printf("El valor de la variable es: %d\n", myVar); printf("Dirección de memoria de.
Programación Modular Programación de Computadoras - Hugo Vega Grupo2: Reina Rodríguez Miriam Salluca.
Guía teórica de manejo de estructuras de datos
UNIVERSIDAD JUÁREZ AUTÓNOMA DE TABASCO Nombres: Isaac Sánchez García Teofilo Martinez Garcia Ricardo Del Carmen Paz López Vanesa Anahí Pérez Lizárraga.
Transcripción de la presentación:

FUNCIONES Y PROCEDIMIENTOS Cátedra de Informática I – Ing. José Tortone

DESCRIPCIÓN DEL PROGRAMA #include <stdio.h> int fibo(int n); int main(int argc, char *argv[]) { int cant; int x; printf(“Termino de la Serie " ); scanf("%d", &cant ); x = fibo(cant); printf("%d\n", x ); return 0; } int fibo(int n ) int a=0, b=1, c; int cant= 2; do c = a + b; a=b; b=c; cant = cant + 1; }while(cant < n); return c; DESCRIPCIÓN DEL PROGRAMA Este es un programa en C que llama a una función llamada fibo que devuelve el término n de la serie de Fibonacci. Programa Principal Declaración de la Función fibo int fibo(int n); NOMBRE DE LA FUNCIÓN Puede llevar cualquier nombre con las mismas reglas que las variables. Los nombres no deben repetirse. Desarrollo de la función fibo PARÁMETRO/S Son los datos que se le pasa a la función para que sean procesados. En este caso un número que indica cuál término de la serie de Fibonacci queremos obtener. Los parámetros pueden ser ninguno o la cantidad que creamos necesaria. VALOR DE RETORNO Devuelve uno o ninguno. Si devuelve un valor tenemos una FUNCION. Si no devuelve ninguno tenemos un PROCEDIMIENTO.

TIPOS DE FUNCIONES Y PROCEDIMIENTOS #include <stdio.h> int fibo(int n); int main(int argc, char *argv[]) { int cant; int x; printf("Termino de la Serie " ); scanf("%d", &cant ); x = fibo(cant); printf("%d\n", x ); return 0; } int fibo(int n ) int a=0, b=1, c; int cant= 2; do c = a + b; a=b; b=c; cant = cant + 1; }while(cant < n); return c; TIPOS DE FUNCIONES Y PROCEDIMIENTOS Funciones de Librería. Ya están hechas y vienen compiladas en unos archivos llamados Archivos de Librería, y sus declaraciones están en los Archivos de Cabecera. Dentro del archivo stdio.h están declaradas las funciones printf y scanf. Funciones definidas por el Usuario. Se las debe programar y pueden ser ejecutadas todas las veces que se quiera desde el programa principal o desde cualquier otra función o procedimiento definidos por el usuario con sola condición que antes de utilizarse estén declaradas. En este caso la función fibo es llamada desde la función principal (main)

EJECUTAMOS EL PROGRAMA #include <stdio.h> int fibo(int n); int main(int argc, char *argv[]) { int cant; int x; printf("Termino de la Serie " ); scanf("%d", &cant ); x = fibo(cant); printf("%d\n", x ); return 0; } int fibo(int n ) int a=0, b=1, c; int cant= 2; do c = a + b; a=b; b=c; cant = cant + 1; }while(cant < n); return c; EJECUTAMOS EL PROGRAMA Al llamarse a la función, el control del programa pasa a fibo(). El Parámetro cant se copia a la variable n de fibo(). Las variables a, b, c, cant de la función fibo() son locales y no pueden ver a las variables x, cant de main(), también locales. Notar que las variables cant de main() y cant de fibo() SON DIFERENTES (ocupan distintas direcciones de memoria) aunque tengan el mismo nombre. El valor de retorno c se lo asigna a la variable x de main().

UTILIZACIÓN DE VARIABLES DE PUNTERO CUÁNDO SE UTILIZAN? Cuando se necesita que una variable del programa que llama pueda ser modificada desde la función o el procedimiento. Para pasar vectores como parámetro. SI NO HUBIÉRAMOS UTILIZADO VARIABLES DE PUNTERO NO SE HABRÍA PRODUCIDO EL CAMBIO DE VARIABLES Antes de llamar a la función cambiar() Después de llamar a la función cambiar() PRIMER CASO Aquí el procedimiento cambiar() en vez de recibir como parámetros los valores de a y b, recibe las DIRECCIONES DE MEMORIA de a y b mediante variables de puntero. #include <stdio.h> void cambiar( int *m, int *n) { int aux = *m; *m = *n; *n = aux; } int main(int argc, char *argv[]) int a=10, b=20; printf("a=%d b=%d\n\n", a, b ); cambiar( &a, &b ); return 0; La variable aux (variable local) tomará el valor que está guardado en la dirección de memoria m o sea el valor de la variable a de main(). El valor que está guardado en la dirección de memoria de m (a) tomará el valor que está guardado en la dirección de memoria de n (b). El valor que está guardado en la dirección de memoria de n (b) tomará el valor de aux (variable local).

CASO 2: LOS VECTORES SIEMPRE SON PASADOS A LAS FUNCIONES Y PROCEDIMIENTOS COMO VARIABLES DE PUNTERO #include <stdio.h> #include <stdlib.h> #include <time.h> #define Terms 20 void mostrar(int *x, int cant) { int i; for( i = 0; i < cant; i++) printf("%d\t", x[i]); } printf("\n\n"); int main(int argc, char *argv[]) int a[Terms], i; srand(time(NULL) ); for( i = 0; i < Terms; i++) a[i] = (rand()%501)+500; mostrar(a, Terms); return 0; OBSERVAR Al pasar un vector como parámetro NO SE PASA la dirección del vector. EL NOMBRE DEL VECTOR ES UNA VARIABLE DE PUNTERO. Cuando llamamos a la función o procedimiento para los vectores se utilizan los corchetes con la variable local, puesto que la utilización de los mismos ES OTRA MANERA DE INDIRECCIONAR. X[i]