Programación 2 Universidad de Los Andes Escuela de Ingeniería de Sistemas Departamento de Computación Apuntadores. Funciones Ejercicio 1 ● Dado un arreglo de enteros (introducido por el usuario) y usando apuntadores para manipular el arreglo, genere un arreglo con la diferencia de los elementos sucesivos del arreglo de entrada. Ejemplo: Entrada: (3, 5, 7, 1, 2) Salida: (-2, -2, 6, -1) 27/06/16 S. Solé - Programación 2 2 Ejercicio 1 1.Error de compilación+entrada fija(no por el usuario)+no usa apuntadores for(int i=0; i<tam; i++) resta[i]= array[i]-array1[i]; cout << resta[i] << endl; Al declarar i como entero en el for, esa variable sólo es válida dentro del for, ya cuando sale del for no existe! Estilo 27/06/16 for(int i=0; i<tam; i++) resta[i]= array[i]-array1[i]; cout << resta[i] << endl; S. Solé - Programación 2 3 Ejercicio 1 2.Longitud del vector de entrada fija a 5 o 6 posiciones 3.Deben indicar al usuario como va a separar la introducción de los valores de entrada (enter, un carácter, etc.) 4.Manejo de vectores sin apuntadores! 27/06/16 S. Solé - Programación 2 4 Apuntador Variable que contiene la dirección de memoria de una variable ● int *p; Siempre se apunta a un tipo específico de datos 27/06/16 S. Solé - Programación 2 5 & ● Operador unario & Devuelve la dirección de un objeto. Sólo aplica para objetos que están en memoria. p = &c p apunta a c 27/06/16 S. Solé - Programación 2 6 * ● Operador unario * - operador de indirección Cuando se aplica a un apuntador, da acceso al objeto al que señala el apuntador. 27/06/16 S. Solé - Programación 2 7 Tipos de apuntadores Dato Apuntador No constante No constante const int *x; Constante No constante int *const x; No constante Constante Constante Constante int *x; const int *const x; 27/06/16 S. Solé - Programación 2 8 Funciones Entrada Función Salida Piensa siempre en funciones antes de repetir código. 27/06/16 S. Solé - Programación 2 9 Funciones Entrada Función Gestión de errores 27/06/16 S. Solé - Programación 2 Salida 10 Diseño de funciones Desglosar el problema en entradas, salidas y gestión de errores Verificar pre-requisitos Elegir nombre descriptivo para la función Diseñar estrategias de prueba para la función Implementar la función 27/06/16 Probar la función S. Solé - Programación 2 11 Funciones/Rutinas Piezas pequeñas diseñadas para ejecutar una tarea específica. Permiten desarrollar y mantener programas grandes y módulos. Tipos: ● Funciones ● Procedimientos 27/06/16 S. Solé - Programación 2 12 Funciones Tomando algunos parámetros realiza una operación y produce un resultado. Se define una sola vez pero puede usarse tantas veces como se necesite. Cada vez que se llama a una función, se ejecuta y retorna el control al lugar desde donde se llamó. 27/06/16 S. Solé - Programación 2 13 Procedimientos Tomando algunos parámetros realiza una operación. NO produce un resultado. Se define una sola vez pero puede usarse tantas veces como se necesite. 27/06/16 S. Solé - Programación 2 14 Ejercicio Escriba una función que calcule el máximo entre dos números. 27/06/16 S. Solé - Programación 2 15