CI-2126 Computación II

Septiembre - Diciembre 2010

[Asignaciones] [Horario] [Objetivos y Programa] [Evaluación] [Enlaces] [Bibliografía]

Sec. 03? -- Prof. Víctor Theoktisto
  • Notas Acumuladas
  • Clases de Víctor Theoktisto
  • Solución del Examen II
    Oficina MYS-211B

    Sec. 01? -- Prof. Roger Clotet
    Oficina ELE-118
  • Clases de Roger Clotet

  • Sec. 02? -- Prof. Jesús de Oliveira (sólo Práctica, jueves)
    Oficina MYS-2??

     Horario:

    Teoría Mar 1-2 ENE-106, AUL-011
    Prácticas Jue 1-2 AUL-011, ENE-106, ENE-118
    Laboratorio Lun 7-8, 9-10 Salas MYS, PB

     Evaluación:

    Teoría Examen I 32%               Examen II 30%  
    Práctica Tarea 1 4%   Tarea 2 4%              
    Laboratorio Asignación 1 5%   Asignación 2 5%   Asignación 3 5%        
                  Proyecto 1ra 5%   Proyecto Final 10%  

     Asignaciones de Teoría

     Proyecto

     Asignaciones de laboratorio

     Enunciados y Ejercicios de la Práctica

     Cronograma detallado de clases y evaluaciones

    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%)

     Material del curso

    Ambientes de Desarrollo (IDE) con Compiladores de C

     Referencias de C