| SEMANA |
LABORATORIO (Lunes) |
TEORÍA (Martes) |
PRÁCTICA (Jueves) |
1 20/09-26/09 |
No habrá actividades |
Introducción. Repaso de conceptos de CI2125: Algoritmos. Técnicas de Programación.
Prototipos de Funciones. Pasaje de Parámetros. Alcance de variables. Pre y post condición |
Introducción. Repaso de sintaxis en C. Ejercicios sobre alcance y pasaje de parámetros. La pila de
invocación. Variables externas. Pre y post condición |
2 27/09-03/10 |
Conocimiento del Ambiente de Trabajo. Construcción de un proyecto (project) con varios archivos.
Ejercicio: uso de variables externas. |
Archivos. Manejo de memoria. Arreglos. vs apuntadores. |
Ejercicios sobre archivos, arreglos y apuntadores. Uso de struct y
arreglos para crear estructuras. |
3 04/10-10/10 |
Ejercicios sobre archivos, arreglos y
apuntadores. Uso de struct y
arreglos para crear estructuras. |
Programación Modular. TADs:
Racional y Número Complejo.
Conceptualización de la estructura y
operaciones básicas (notación
funcional). |
Definición de estructuras (TADs):
Racional, Complejo, Polinomio, Conjunto. Uso
de las operaciones básicas. Manejo y uso de operaciones
básicas. Implementación Estática de
los TADs. |
4 11/10-17/10 |
Uso de TAD existentes (Complejo y
Conjunto) |
Feriado 12 de Octubre |
Definición de nuevos TAD:
Polinomio, Secuencia.
Implementación estática de
operaciones básicas de los TADs. |
5 18/10-24/10 |
Ejercicios sobre TADs Racional y Complejo dinámicos; |
Listas enlazadas. Uso de malloc(), calloc() y free(). Implementación de TADs opacos dinámicos |
Uso del malloc. Implementación de estructuras dinámicas |
6 25/10-31/10 |
Asignación 1: Funciones y archivos (5%)
Enunciado del proyecto. Ejercicios sobre listas enlazadas |
Definición e Implementación de
TADs Dinámicos: Conjunto, Secuencia. |
CANCELADO POR FUERZA MAYOR |
7 01/11-07/11 |
Ejercicios con TADs |
Examen I (32%) |
Recursion. Implementación de TADs
dinámicos con listas |
8 08/11-14/11 |
Asignación 2: TADs dinámicos(5%). |
Definición del TAD Pila y el TAD Cola.
Implementación dinámica usando listas enlazadas. |
Implementación de estructuras
dinámicas. Uso de recursion. |
9 05/11-21/11 |
Implementación de TADs
dinámicos. 1ra entrega Proyecto (5%) |
Otras implementaciones dinámicas de
los TADs (listas doblemente
enlazadas, listas circulares). |
Implementación de estructuras
dinámicas. |
10 22/11-28/11 |
Implementación de TADs
COLA, PILA. Asignación 3: TADs complejos(5%). |
Punteros a funciones. Uso de Mapas, Filtros y Combinadores con TADs, listas y recursión |
Ejercicios con otras estructuras
dinámicas. Búsqueda y Ordenamiento. |
11 29/11-05/12 |
Consulta sobre el proyecto. Implementación de búsquedas y ordenamientos. |
El TAD Árbol Binario. Operaciones sobre árboles |
Introducción a la Comparación de algoritmos |
12 06/12-12/11 |
Entrega Final Proyecto (10%) |
Comparación de algoritmos |
Examen II (30%) |