Trimestres anteriores‎ > ‎2020-I‎ > ‎

1151038 - Programación Estructurada‎

Institución: Universidad Autónoma Metropolitana, Azcapotzalco.
Instructor: Rodrigo Alexander Castro Campos.
Trimestre: 2020-I.

Grupo: CTG02.
Horario: Lunes, miércoles y viernes de 07:00 a 08:30.
Salón: Página de Facebook (clases en stream) / T-Babbage.

Contenido oficial del curso:
  • Algoritmos y programas.
  • Diseño de programas estructurados.
  • Ambiente de desarrollo Unix.
  • Programación modular.
  • Elementos básicos de un programa en lenguaje C.
  • Estructuras de decisión.
  • Estructuras de repetición.
  • Arreglos y estructuras.
  • Cadenas de caracteres.
  • Archivos.
Calificación:

Habrán ocho tareas con un valor de 10 puntos cada una y cuatro exámenes con un valor de 5 puntos cada una. Las tareas y exámenes consistirán en escribir programas para la plataforma omegaUp que resuelvan en lenguaje C el problema de programación indicado para la evaluación. Sus datos deberán enviarse mediante este formulario antes de la entrega de la primera tareaNo se calificarán programas de ninguna otra forma. Cada tarea estará disponible con al menos una semana de anticipación con respecto a la fecha de entrega. Los exámenes se realizarán en horario de clase y tendrán una duración máxima de 30 minutos. La fecha de cada examen se anunciará con al menos una semana de anticipación. No habrá evaluación terminal.

La calificación final se obtiene de sumar los puntos de los programas resueltos al 100% según OmegaUp. Es requisito para aprobar el curso obtener al menos 15 puntos provenientes de exámenes. La escala de calificación en acta es:
  • Al menos 60 puntos para acreditar con S.
  • Al menos 73 puntos para acreditar con B.
  • Al menos 87 puntos para acreditar con MB.

De acuerdo al Reglamento de Alumnos de la UAM, es falta de los alumnos en contra de la institución el suplantar o permitir ser suplantado en la realización de actividades académicas y se impondrá desde amonestación escrita hasta suspensión por dos trimestres. Adicionalmente, los alumnos que incurran en esta falta no tendrán derecho a aprobar el curso.

Calendario: El siguiente calendario es tentativo y podrá cambiar a lo largo del curso.

Pueden consultar esta lista de problemas de programación para que practiquen.
  • 11/05: Presentación del curso. Funciones matemáticas.
  • 13/05: Tipos de datos. Algoritmos como funciones.
  • 15/05: Día de descanso obligatorio.
  • 16/05: [sábado] Ejercicios de práctica (subsección 2.1 de las notas). Las soluciones están en el anexo de las notas
  • 18/05: Compiladores y programas. Estructura de un programa en C. 
  • 20/05: Entrada y salida de valores y variables. Introducción a omegaUp (video de uso), 12. 
  • 22/05: Aritmética de tipos enteros y reales. Problemas 12. Tarea 1 para entrega el 01/06. Envíos aceptados.
  • 23/05 : [sábado] Ejercicios de práctica (subsecciones 4.1 y 5.1 de las notas).
  • 25/05: Asignaciones y ejecución secuencial. Constantes y literales. Problemas 1, 2.
  • 27/05: Uso de funciones y la biblioteca de C.
  • 29/05: Uso de la línea de comandos. Problema 1.
  • 30/05 : [sábado] Ejercicios de práctica (la sección " Cálculos aritméticos" de la lista de problemas).
  • 01/06: Comparaciones y expresiones ternarias. Problemas 1, 2. Primer examen parcial. Envíos aceptados.
  • 03/06: Operadores lógicos y s entencias de decisión if-else. Problema 1. Tarea 2 para el 12/06. Envíos aceptados.
  • 05/06: Sentencia de decisión switch. Problemas 1, 2, 3.
  • 06/06 : [sábado] Ejercicios de práctica (subsecciones 9.1, 10.1 y 11.1 de las notas).
  • 08/06: Ejecución repetitiva de código y la sentencia while. Problema 1, 2.
  • 10/06: Sentencias do, break y continue. 
  • 12/06: Sentencia for. Tarea 3 para el 22/06. Problemas 123. Envíos aceptados.
  • 13/06 : [sábado] Ejercicios de práctica (subsección 12.1 de las notas).
  • 15/06: Sesión de ejercicios. Segundo examen parcial. Envíos aceptados.
  • 17/06: Apuntadores y referencias. Problema 1, 2. Tarea 4 para el 26/06. Envíos aceptados.
  • 19/06: Declaración y uso de arreglos. Problema 1.
  • 20/06 : [sábado] Ejercicios de práctica (subsecciones 12.1 y 13.1 de las notas).
  • 22/06: Algoritmos fundamentales de arreglos. Problemas 1, 2, 3, 4, 5.
  • 24/06: Declaración de matrices. Tercer examen parcial. Envíos aceptados. Tarea 5 para el 03/07. Envíos aceptados.
  • 26/06: Uso de matrices. Problema 1, 2.
  • 27/06 : [sábado] Ejercicios de práctica (subsecciones 14.1 y 15.1 de las notas).
  • 29/06: Algoritmos fundamentales de matrices. Problema 1, 2. Tarea 6 para el 10/07. Envíos aceptados.
  • 01/07:  Representación y manejo de caracteres.
  • 03/07:  Representación y manejo de cadenas.
  • 04/07 : [sábado] Ejercicios de práctica (subsecciones 15.1 y 16.1 de las notas).
  • 06/07: Algoritmos fundamentales de cadenas. Cuarto examen parcial. Envíos aceptados.
  • 08/07: Declaración y uso de estructuras. Estado de la entrada. Tarea 7 para el 15/07. Envíos aceptados.
  • 10/07: Flujos de entrada/salida y manejo de archivos. Tarea 8 para el 15/07. Envíos aceptados.
  • 11/07 : [sábado] Ejercicios de práctica 16.1 y 17.1.
  • 13/07: Examen de reposición.
  • Calificaciones finales.
Entornos de programación que pueden usar localmente:
Entornos de programación que pueden usar en línea:
Bibliografía:
  • Castro Campos. Notas de curso (se irán actualizando conforme avance el trimestre).
  • Kernighan, Ritchie. El lenguaje de programación C. Prentice-Hall Hispanoamericana..
  • Zaragoza Martínez. 64 ejercicios de programación. UAM Azcapotzalco.
  • Llana, Gregorio, Martínez, Palao, Pareja. Ejercicios creativos y recreativos en C++. Prentice-Hall. Disponible en http://antares.sip.ucm.es/cpareja/libroCPP/
Enlaces de interés: