Programación I (503208, 2012-I)

Home

Noticias (más recientes primero)
Contenidos (por semana)
Recursos y materiales
Notas importantes

Noticias (más recientes primero)

2012-04-23-19:29: La Tarea 1 ha sido publicada. Lean cuidadosamente. Hubo un pequeño glitch y me olvidé de upload la version más nueva de mi website al svn. Había agregado aqui algunas cosas. Tengo la info en la compu de la oficina, mañana lo arreglo. En todo caso, no era nada vital. Happy hacking!

2012-04-23-10:38: Actualicé la página con el handout funciones que hicimos el martes. Hoy en el transcurso del día publicaré la primera tarea. A estar atentos.

2012-04-18-14:27: El código de GoogleDNA está aquí.

2012-04-09-14:46: C es otra vez el lenguaje número uno en TIOBE.

2012-04-02-16:08: Para la explicación de documento noweb en noweb, ver aqui.

2012-03-19-09:12: Las siguientes personas tienen laboratorios el día lunes:

Isabel Achurra Gonzalo Lizama Omar Pilar
Diego Benitez David Martinez Omar Puente
Martin Cabello Gustavo Marín Rafael Retamal
Nicolas Contreras José Ortiz Jorge Roa
Pablo Flores Natacha Osses Alvaro Stockle
Jorge Garay Christian Pardo Marcela Torres
Matías Lermanda

2012-03-13-10:20: Ayer se acordaron en clase los horarios de los labs: son los lunes cd 12pm a 2pm y el viernes de 2pm a 4pm. !!!Atención!!! Todos debe enviar un correo a Catherine diciendo en cual de los dos horarios NO pueden ir, para poder dividirlos en las dos secciones.

2012-03-11-13:53: El programa ha sido actualizado para este año.

2012-03-11-11:15: Las clases empiezan el lunes 12 de marzo, 10ma hora (5:15pm) en la sala IS 2-2.

2012-01-12-14:06: En el 2012 habrá nuevos desafíos en Programación I. Buena parte del material será "refactored" para acercarnos más a aprender cómo trabaja la máquina y veremos algoritmos y estructuras de datos simples.

Mon Sep 26 09:52:00 2011: Primera encarnación de la página web.

Contenidos (por semana)

Semana Tema Capítulo K&R Handout Lab Observaciones
Lu 12/03 Administratrivia Ninguno programa no hay
Ma 13/03 Arquitectura y representación de datos Ninguno pdf ejemplo noweb
Lu 19/03 Intro a C, Tipos de datos básicos Cap. 2 (2.1 a 2.9, y 2.12) noweb; pdf Study Guide 1
Ma 20/03 Estructuras de control (if) Cap.3 (3.1 a 3.4) noweb; pdf tex; pdf
Lu 26/03 Estructuras de control (for) Cap.3 (3.5 a 3.8) noweb; pdf tex; pdf
Lu 02/04 Arreglos Ninguno noweb; pdf tex; pdf Study guide 2
Ma 16/04 Funciones y estructura de programas Cap. 4 noweb; pdf
Lu 23/04 Input/Output en C Ninguno I/O in C, File I/O in C Tarea 1, GoogleDNA
Lu 30/04 No hay clases 30/04-01/05: Día del Trabajo Ninguno Ninguno Ninguno Deadline Tarea 1
Ma 07/05 Structs y uniones Ninguno noweb, pdf
Ma 07/05 Certamen 1 está aqui
Lu 28/05 Tarea 2
Lu 04/06 Deadline Tarea 2
Lu 18/06 Tarea 3
Lu 25/06 Deadline Tarea 3
Ma 26/06 Certamen 2
Ma 03/07 ninguno Asistencia obligatoria

Notas importantes:

  1. [Sp] Los handouts son sacados, a veces verbatim, de lugares como Wikipedia, el tutorial de Brian Kernighan, y otras decenas de lugares. He tratado de dar crédito a todos, pero no siempre me he acordado, por falta de tiempo, simplemente. Si alguien usa estas notas, y ve su código/palabras en ellas, por favor háganmelo saber y felizmente agregaré los créditos correspondientes, o sacaré el texto que ofende... a elección del autor original. [En] The handouts have been produced using notes, sometimes verbatim, from places such as Wikipedia, Brian Kernighan's tutorial (see below), and a dozen other different places. I have tried to credit the sources, and most times I think I have succeeded, but I have sometimes forgotten, simply because I didn't have enough time to prepare the classes very much in advance. I apologize for this and hope that if anyone finds that their code/notes have not been properly credited, I'd be happy to either take them out, or give the proper credit, at the original author's desire.
  2. [Sp] Esta fue la primera vez que enseñé este curso. Las notas no están muy pulidas, y muchas ni siquiera han sido tipeadas. Esto se selucionará a medida que vaya dictando el curso en los años sucesivos. [En] This was the first time I have taught this course, and my notes are incomplete, and unedited. Many errors remain, and they are all my own poor judgement, but I would appreciate if people would let me know about them, and I will myself edit these notes/complete them in future incarnations of this course.

Recursos y materiales

Libro de cabecera:

Material obligatorio

Material de apoyo:

En este curso enseñaremos asumiendo las seguientes tecnologías: Linux, Emacs, C, Latex, Noweb, GDB. Abajo se entregan links para "cheat sheets" (también llamandas "reference cards"). Las cheat sheets ("refcards") son resumenes de los comandos más utilizados mientras se usan esas herramientas. Por ejemplo, en Linux, ls se ocupa para listar los elementos de un directorio, en Latex {\bf test}, bf escribe la palabra entre {} en negrita, etc.

Para instalar estas tecnologías en Ubuntu Linux:

Material extra

Notas importantes