CS1111 Programación I - 2021-2
CS1111 Programación I - 2021-2
CS1111 Programación I - 2021-2
CARRERA
Ciencia de la Computación
CURSO
Programación I
CRÉDITOS
4
1. Asignatura 4
2. Datos generales 4
3. Profesores 4
3.1 Profesor coordinador del curso 4
3.2 Profesor(es) instructor(es) del curso 4
4. Introducción al curso 4
5. Objetivos 5
6. Competencias 5
7. Resultados de aprendizaje 6
8. Temas 6
9. Plan de trabajo 7
9.1 Metodología 7
9.2 Sesiones de teoría 7
9.3 Sesiones de práctica (laboratorio o taller) 7
10. Sistema de evaluación
8
11. Sesiones de apoyo o tutorías 8
12. Referencias bibliográficas 9
1. ASIGNATURA
CS1111 - Programación I
2. DATOS GENERALES
2.1 Ciclo: 1°
2.2 Créditos: cuatro (4) créditos
2.3 Horas de teoría: dos (2) semanales
2.4 Horas de práctica: cuatro (4) semanales
2.5 Duración del período: dieciséis (16) semanas
2.6 Condición: Obligatorio
2.7 Modalidad: Virtual
2.8 Requisitos: Ninguno
3. PROFESORES
4. INTRODUCCIÓN AL CURSO
Sesión 11: Diseñar, implementar, probar, y depurar un programa que usa estructuras
de datos como diccionarios o tablas de hash.
Sesión 12: Usar la notación formal Big O para dar límites de casos esperados en el
tiempo de complejidad de los algoritmos. Explica a que se refiere con
“mejor”, “esperado” y “peor” caso de comportamiento de un algoritmo
4.1 (nivel 1): Crear, seleccionar, adaptar y aplicar técnicas, recursos y herramientas
modernas para la práctica de la computación y comprende sus
limitaciones.
Para Ingeniería los criterios de desempeño que se van a trabajar en este curso son:
5.1 (nivel 1): Crea, selecciona y utiliza técnicas, habilidades, recursos y herramientas
modernas de la ingeniería y las tecnologías de la información,
incluyendo la predicción y el modelamiento, con la comprensión de sus
limitaciones.
1.1 (nivel 1): Analizar información verbal y/o lógica proveniente de distintas fuentes,
encontrando relaciones y presentándola de manera clara y concisa.
7. RESULTADOS DE APRENDIZAJE
Al final del curso de Programación I se espera que el estudiante sea capaz de:
RA2. Identificar las características de data y/o otras condiciones o suposiciones que
lleven a diferentes comportamientos de un algoritmo como “mejor”, “esperado”
y “peor” caso.
8. TEMAS
1. Algoritmos
1.1. ¿Qué es un algoritmo?
1.2. ¿Cómo se representa?
2. Introducción a Python
2.1. ¿Qué es Python?
2.2. ¿Qué es un intérprete?
2.3. ¿Qué es un IDE?
2.4. Entradas y Salidas
2.5. Tipos de datos básicos
2.6. Variables
2.7. Operadores aritméticos y lógicos
3. Estructuras de Control
3.1. Estructuras de control selectivas
3.2. Estructuras de control repetitivas
3.3. Estructuras de control repetitivas anidadas
4. Strings
5. Funciones
5.1. ¿Qué es una función?
5.2. Parámetros por valor y referencia
5.3. Librerías
5.4. Alcance de una variable
5.5. Parámetros por defecto
6. Listas
6.1. ¿Qué es una lista?
6.2. Índices y operadores en una lista
6.3. Iteración en una lista
6.4. Matrices
6.5. Listas por comprensión
7. Diccionarios
7.1. ¿Qué es un diccionario?
7.2. Dupla: Llave - Valor
8. Archivos
8.1. Lectura de archivos
8.2. Escritura de archivos
9. Complejidad algorítmica
9.1. Complejidad en tiempo
9.2. Complejidad en espacio
10. Recursión
10.1. ¿Qué es recursión?
10.2. Cola de llamadas
10.3. Backtracking
11. Ordenamiento
11.1. Ordenamiento por selección (selection sort)
11.2. Ordenamiento por inserción (insertion sort)
11.3. Ordenamiento rápido (quicksort)
9. PLAN DE TRABAJO
9.1 Metodología
Para verificar que los alumnos hayan alcanzado el logro planteado para cada una de
las unidades de aprendizaje, realizarán actividades que les permita aplicar los
conocimientos adquiridos durante las sesiones de teoría y se les propondrá retos que
permitan evaluar el desempeño de los alumnos.
10.SISTEMA DE EVALUACIÓN
Teoría Laboratorio
Evaluación
Exámen E1 (10%) Evaluación Continua C1 (4%)
(La ponderación
Exámen E2 (10%) Evaluación Continua C2 (4%)
de la evaluación
Tarea C1 (5%) Práctica Calificada PC1 (9%)
se hará si
Tarea C2 (5%) Práctica Calificada PC2 (9%)
ambas partes
Tarea C3 (5%) Práctica Calificada PC3 (9%)
Tarea C4 (5%) Práctica Calificada PC4 (9%)
40% 60%
100%
Las rúbricas que permitirán medir las actividades más significativas del curso y que,
además, se relacionan con la evaluación de las competencias del estudiante son:
Enlace
Este apartado permite formalizar los espacios de apoyo a los estudiantes y que éstos
tengan la atención NECESARIA y el tiempo disponible para presentar sus dudas y
consultas acerca del curso:
Responder preguntas y
revisar errores comunes en
19/09 – 8:00 a Estructuras de
3 el uso de las estructuras de
8:30 Control de Flujo
Control de Flujo
Condicionales y Repetitivas
Recursividad y
4/11 – 10:00 a Resolver Ejercicios y
9 Complejidad
10:30 Responder Preguntas
Algorítmica
12.REFERENCIAS BIBLIOGRÁFICAS
● Brookshear, J. G., Smith, D., & Brylow, D. (2012). Computer Science: An Overview.
● Guttag, J. (2016). Introduction to computation and programming using Python: With
application to understanding data. MIT Press.
● Stephenson, B. (2016). The Python Workbook. SPRINGER INTERNATIONAL PU.