UNIVERSIDAD NACIONAL DE ASUNCIÓN FACULTAD POLITÉCNICA LICENCIATURA EN CIENCIAS INFORMÁTICAS PLAN 2009 PROGRAMA DE ESTUDIOS I. 1. 2. 3. 4. IDENTIFICACIÓN Materia : ALGORÍTMICA II Código : 2.2 Horas semanales : 5 horas 3.1. Clases teóricas: 1 horas 3.2. Clases prácticas: 4 horas Total real de horas disponibles: 80 horas 4.1. Total de Clases teóricas: 16 horas 4.2. Total de clases prácticas: 64 horas II. - JUSTIFICACIÓN El desarrollo de programas de computadoras requiere no solo el conocimiento de técnicas de construcción de algoritmos y utilización de las estructuras de datos apropiadas, sino también quiere la capacidad diseñar estrategias para resolver problemas complejos. Además, se requiere la capacidad de implementar algoritmos en base a especificaciones, y analizar, comprender y describir algoritmos ya desarrollados. III. 1. 2. 3. 4. 5. OBJETIVOS Desarrollar programas o subrutinas en base a definiciones de requerimientos. Presentar soluciones alternativas a problemas algorítmicos. Desarrollar algorítmos que combinen procesamiento de archivos con estructuras de datos en memoria. Utilizar tipos abstractos de datos básicos en la resolución de problemas algorítmicos. Criticar la calidad del método empleado en la obtención de la solución de los problemas algorítmicos. IV. - PRE - REQUISITO 1. 2. V. - Algorítmica I. Matemática II. CONTENIDO 5.1. Unidades programáticas 1. 2. 3. 4. 5. Programación estructurada. Estructura de datos fundamentales Subrutinas y recursividad Gestión y procesamiento secuencial e indexado de archivos Fundamentos y compilación en lenguaje C 5.2. Desarrollo de las unidades programáticas 11 Programación estructurada. 1.1. Un breve recorrido por los conceptos básicos de la algoritmia. 1.2. Estructura general de un programa 1.3. Operadores y expresiones 1.4. Programación estructurada 1.4.1. Recursos abstractos 1.4.2. Diseño descendente (top-down) 1.4.3. Estructuras básicas 11 Estructura de datos fundamentales 2.1. Arreglos (arrays) 2.1.1. Lineales, bidimensionales, multidimensionales. 2.1.2. Arreglos abiertos. 2.1.3. Arreglos bidimensionales con contornos no regulares. Página 1 de 3 Ciencias Informáticas Facultad Politécnica – UNA 2.1.4. Características avanzadas. Registros (structs or records) 2.2.1. Inicialización y uso. 2.2.2. Características avanzadas. 2.3. Operaciones con cadenas 2.3.1. Longitud. 2.3.2. Manipulación de caracteres de una cadena. 2.3.3. Subcadenas. 2.3.4. Conversión entre cadenas y otros tipos de datos. 2.2. 11 11 11 Subrutinas y recursividad 3.1. Subrutinas 3.1.1. Definición. 3.1.2. Ventajas y características. 3.2. Programación modular. 3.2.1. Diseño descendente (top-down). 3.3. Tipos de subrutinas 3.3.1. Que retornan un valor (funciones). 3.3.2. Que no retornan valor (procedimientos). 3.4. Ámbito de los identificadores. 3.5. Paso de parámetros 3.6. Por valor. 3.7. Por referencia. 3.8. Subrutinas y arreglos abiertos. 3.9. Recursividad 3.9.1. Definición. 3.9.2. Ventajas y desventajas. 3.9.3. Implementación. 3.9.4. Recursión vs. iteración. Gestión de archivos secuenciales e indexados 4.1. Archivo 4.2. Conceptos y definiciones 4.3. Organización 4.4. Procesamiento secuencial e indexado. 4.5. Corte de Control 4.6. Corte de un solo nivel 4.7. Corte de varios niveles Fundamentos y compilación en lenguaje C 5.1. Modularización usando unidades en en Lenguaje C. 1.1. Ocultamiento de la información mediante definición de interfases y sección de implementación. VI. 1. 2. 3. ESTRATEGIAS METODOLÓGICAS Exposición de los temas. Resolución de problemas en clase. Trabajos prácticos. VII. 1. 2. 3. Proyector de transparencias. Proyector de imagen de computador (data display). Computadoras. VIII. 1. 2. EVALUACIÓN Los exámenes parciales requeridos por los reglamentos de la Facultad. La calificación final será establecida de acuerdo a la escala vigente en la Facultad. IX. MEDIOS AUXILIARES BIBLIOGRAFÍA Joyanes Aguilar, Luis. Fundamentos de Programación-Algorítmos y Estructuras de Datos / Luis Joyanes Aguilar. -- Madrid : McGraw-Hill, 1990.-- 702 p. Página 2 de 3 Ciencias Informáticas Facultad Politécnica – UNA Rodríguez Almeida. Metodología de la Programación a través de Seudocódigo / Miguel Angel Rodríguez Almeida. -- Madrid : McGraw-Hill, 1991. -- 301 p. Loomis, Mary E.S. Estructura de datos y organización de archivos / Mary E.S. Loomis. -- México : Prentice-Hall Hispanoamérica S.A., 1991. -- 516 p. Braunstein, Silvia L. Introducción a la programación y a las estructuras de datos / Silvia L. Braunstein. Alicia B. Gioia. -- Buenos Aires : Editorial Universitaria de Buenos Aires, 1987. Página 3 de 3