UNIVERSIDAD TECNOLOGICA DE LOS ANDES FACULTAD DE INGENIERÍA CARRERA PROFESIONAL DE INGENIERIA DE SISTEMAS E INFORMATICA
SÍLABO DE LA ASIGNATURA: ALGORITMOS Y ESTRUCTURA DE DATOS SEMESTRE ACADÉMICO 2009-I I. DATOS GENERALES 1.1. Nombre de la asignatura 1.2. Nombre de la Facultad 1.3. Carrera Profesional 1.4. Nivel de estudios 1.5 Código de la Asignatura 1.6. Pre_requisito 1.7. Semestre Académico 1.8. Nro. de hrs. semanales 1.9. Duración de la Asignatura 1.10. Créditos 1.11. Categoría de la asignatura 1.12. Profesor 1.13. Horario
: Algoritmos y Estructura de Datos I : Facultad de Ingeniería : Ingeniería de Sistemas e Informática : III semestre : SI032 : SI021 : 2009-I : 5 hrs. : 17 semanas : 4 créditos : FICI : Ing. Reynaldo Miranda Pomacondor : LU – MA 07:00 – 9:00; Vi 09:00 – 10:00
II. SUMILLA Definiciones básicas: Dato, Tipo de Datos, Operadores e Identificadores. Algoritmos: Concepto, características, representaciones. Desarrollo de algoritmos en pseudocódigo. Estructuras de Control: secuenciales, selectivas y repetitivas. Datos estructurados: Arreglos y operaciones. Subprogramas: funciones, procedimientos y recursividad. Registros y Archivos. Programación Dinámica: punteros, operaciones, listas (pilas, colas) y árboles. III. OBJETIVOS General: Los alumnos al finalizar el curso estarán en la capacidad de elaborar algoritmos que resuelvan problemas de propósito general. Específicos: 1. Presentar la diversidad de los algoritmos y sus aplicaciones. 2. Aplicar los Algoritmos Estructurados (Programación Estructurada) para la solución de problemas. 3. Optimizar los algoritmos estructurados de forma que sean más simples y eficientes. IV. DESARROLLO DE CONTENIDOS PRIMERA UNIDAD: Conceptos Básicos Conceptos necesarios para iniciar el desarrollo de algoritmos. Primera Semana: Introducción. Definiciones Básicas: • Concepto de Datos – Tipos de datos. • Operadores: Aritméticos, Lógicos y de Comparación. • Identificadores: Concepto, Constantes, Variables. Operador de Asignación, Acumulador y Contador.
Algoritmos: Concepto, características y ejemplos. Representaciones de los algoritmos. Aplicaciones simples de los algoritmos.
SEGUNDA UNIDAD: Programación en Pseudocódigo Desarrollo de algoritmos estructurados en pseudocódigo mediante las estructuras Control.
de
Segunda Semana: Estructuras de Control: • Secuenciales. • Selectivas: Simples y Múltiple. • Estructuras Selectivas Anidadas. Tercera Semana: • Repetitivas (Bucles): Bucle con número de repeticiones pre-establecido, Bucle con entrada controlada y Bucle con salida controlada. • Estructuras Repetitivas Anidadas. • Aplicaciones. TERCERA UNIDAD: Estructuras de Datos y Subprogramas Construcción y empleo de datos estructurados de tipo estático. Diseño de subprogramas. Cuarta Semana: Arreglos: • Vectores: Creación, asignación, lectura y escritura. • Operaciones con vectores: Búsqueda, Ordenamiento, Eliminación e Inserción. Quinta Semana: • Matrices: Creación, asignación, lectura y escritura. • Operaciones con matrices. Sexta Semana: Cadenas: • Creación y uso. • Operaciones con cadenas. • Arreglo de cadenas. Aplicaciones. Séptima Semana: Subprogramas: • Funciones: Creación y uso. • Variables globales y Locales. • Aplicaciones. Octava Semana: Examen Parcial Novena Semana: • Procedimientos: Creación y uso. • Parámetros por referencia o valor. • Aplicaciones. Décima Semana: Recursividad: • Funciones recursivas. • Procedimientos recursivos. • Aplicaciones. Décimo Primera Semana: Registros: • Creación y uso. • Operaciones con registros. • Arreglo de registros. Aplicaciones.
2
Décimo Segunda Semana: Archivos de Acceso Aleatorio: • Creación y uso. • Operaciones con archivos: Lectura – escritura, búsqueda y ordenamiento. • Aplicaciones. CUARTA UNIDAD: Programación Dinámica Construcción y empleo de datos dinámicos para generar listas dinámicas y árboles de búsqueda. Décimo Tercera Semana: Punteros: • Creación y uso. • Operaciones con punteros. Listas enlazadas: • Creación de nodos. • Creación y recorrido de una Pila. • Creación y recorrido de una Cola. Décimo Cuarta Semana: Operaciones con listas: • Búsqueda. • Eliminación • Inserción. Décimo Quinta Semana: Árboles: • Creación de un árbol binario de búsqueda. • Recorridos de un árbol binario de búsqueda. • Aplicaciones Décimo Sexta Semana : Examen Final Décimo Séptima Semana : Examen Sustitutorio V. METODOLOGÍA Las clases serán desarrolladas en forma teórico – práctica, induciendo en el alumnos los conceptos mediante comparación de hechos reales. Se pondrá énfasis en la participación de los alumnos en la resolución de problemas planteados en clase.
VI. MEDIOS Y MATERIALES Para el desarrollo de las clases se utilizará por lo general pizarra y tizas. Se entregará una serie de ejercicios relacionados con los temas del curso Las actividades que realiza el alumno son: a) Copiar los archivos lógicos que el profesor prepara desde el blog de la asignatura correspondiente. b) Preparar su exposición y exponer el tema de clase. c) Asistir al 100% a los laboratorios. Cada Laboratorio es calificado. Las actividades que realiza el docente son: a) Preparar el material correspondiente a cada tema. b) Publicar en blog: www.gestionutea.blogspot.com los archivos correspondientes con la antelación previa c) Realizar la retroalimentación correspondiente devolviendo y resolviendo las evaluaciones escritas. d) Facilitar los equipos necesarios para exposición de temas. Actuar de moderador en los temas de discusión en clase
3
VII. EVALUACIÓN La evaluación busca identificar, valorar e interpretar los conocimientos generados (examen de conocimientos), el dominio de conceptos así como el trabajo en equipo (trabajo de aplicación) y el esfuerzo individual (participación en clase y trabajo individual). Los criterios anteriores mencionados tendrán la siguiente ponderación: PF = ((P1+ P2+ P3)+Trabajos + EP1+ EP2)/6 PF = Promedio final P1 = Primera evaluación parcial P2 = Segunda evaluación parcial P3 = Tercera evaluación parcial EP1 = Promedio de la evaluación de proceso de la primera parte EP2 = Promedio de la evaluación de proceso de la segunda parte VIII.BIBLIOGRAFIA 1. Fundamentos de Programación. “Algoritmos y Estructura de Datos”. Luis Joyanes Aguilar. 2da. Edición 1999. Editorial Mc. Graw Hill. 2. Metodología de la Programación: Algoritmos, Diagrama de Flujo y Programas. Tomo I y II. Oswaldo Cairó. Editorial Computec 1996. 3. Algorítmica, Diseño y Análisis de Algoritmos, Funciones e Imperativos. Javier Galvéz / Juan C. Gonzáles / Ángel Sánchez / J. Ángel Velásquez. Editorial RAMA 1993. 4. Metodología de la Programación. Luis Joyanes Aguilar. Editorial Mc. Graw Hill. 5. Estructura de Datos y Organización de Archivos. Mary E. S. Loomis. 2da. Edición 1991. Editorial Prentice Hall Hispanoamericana. 6. Programación Estructurada: Un enfoque algorítmico. Leobardo López R. Editorial Computec. 7. Estructuras de Datos y Diseño de Programas. Robert L.Kruse. Editorial Prentice Hall. 8. Estructuras de Datos. Cairó – Guardate. Editorial Mc. Graw Hill 2001.
4