CS111
CS111
Escuela Profesional de
Ciencia de la Computación
SILABO
2. DOCENTE
Dr. Graciela Lecireth Meza Lovón
Dr. Ciencia de la Computación, Universidad Nacional San Agustı́n, Perú, 2016.
Mag. Mag. Ciencia de la Computación, Universidad Católica San Pablo, Perú, 2019.
Prof. Ingenieria de Sistemas, Universidad Católica Santa Marı́a, Perú, 2020.
4. SUMILLA
1. Historia de los Lenguajes de Programación 2. Conceptos Fundamentales de Programación3. Algoritmos y Estructuras
de Datos fundamentales4. Programación orientada a objetos5. Programación de Video Juegos
5. OBJETIVO GENERAL
1
6. CONTRIBUCIÓN A LA FORMACIÓN PROFESIONAL Y FORMACIÓN GENERAL
Esta disciplina contribuye al logro de los siguientes resultados de la carrera:
a) Aplicar conocimientos de computación y de matemáticas apropiadas para la disciplina. (Usar)
b) Analizar problemas e identificar y definir los requerimientos computacionales apropiados para su solución. (Usar)
i) Utilizar técnicas y herramientas actuales necesarias para la práctica de la computación. (Usar)
C4. Una comprensión del hardware de la computadora desde la perspectiva del software, por ejemplo, el uso del
procesador, memoria, unidades de disco, pantalla, etc.⇒ Outcome i
8. CONTENIDOS
Perspectiva histórica de los lenguajes de programa- Identificar importantes tendencias en la historia del
ción. campo de la computación[Familiarizarse]
Conceptos de Programación tradicionales. Discutir el contexto histórico de los paradigmas de
diversos lenguajes de programación[Familiarizarse]
2
UNIDAD 2: Conceptos Fundamentales de Programación()
Competencias: C1,C2
CONTENIDO OBJETIVO GENERAL
Estructuras de control condicional e iterativas. Escribe programas que usan tipos de datos primiti-
vos[Usar]
Funciones definidas por el usuario.
Modifica y expande programas cortos que usen es-
Paso de funciones y parámetros. tructuras de control condicionales e iterativas ası́ co-
mo funciones[Usar]
Concepto de recursividad.
Diseña, implementa, prueba, y depura un programa
que usa cada una de las siguientes estructuras de
datos fundamentales: cálculos básicos, E/S simple,
condicional estándar y estructuras iterativas, defini-
ción de funciones, y paso de parámetros[Usar]
Escoje estructuras de condición y repetición ade-
cuadas para una tarea de programación da-
da[Familiarizarse]
3
UNIDAD 3: Algoritmos y Estructuras de Datos fundamentales()
Competencias: C1,C2,C5
CONTENIDO OBJETIVO GENERAL
Algoritmos numéricos simples, tales como el cálculo Implementar algoritmos numéricos básicos[Usar]
de la media de una lista de números, encontrar el
mı́nimo y máximo. Implementar algoritmos de busqueda simple y ex-
plicar las diferencias en sus tiempos de compleji-
Algoritmos de ordenamiento de peor caso cuadrático dad[Evaluar]
(selección, inserción)
Ser capaz de implementar algoritmos de ordenamien-
Algoritmos de ordenamiento con peor caso o caso to comunes cuádraticos y O(N log N)[Usar]
promedio en O(N lg N)
Discutir el tiempo de ejecución y eficiencia de me-
Algoritmos de búsqueda secuencial y binaria. moria de los principales algoritmos de ordenamiento
y búsqueda.
Discutir factores otros que no sean eficiencia compu-
tacional que influyan en la elección de algoritmos,
tales como tiempo de programación, mantenibilidad,
y el uso de patrones especı́ficos de la aplicación en
los datos de entrada[Familiarizarse]
Demostrar habilidad para evaluar algoritmos, para
seleccionar de un rango de posibles opciones, para
proveer una justificación por esa selección,y para im-
plementar el algoritmo en un contexto en especı́fi-
co[Evaluar]
4
UNIDAD 4: Programación orientada a objetos(4)
Competencias: C2
CONTENIDO OBJETIVO GENERAL
Uso de una librerı́a de video juegos. Aplicar los fundamentos y los conceptos de lenguajes
de programación para el desarrollo de un video juego
simple. [Usar]
9. METODOLOGÍA
El profesor del curso presentará clases teóricas de los temas señalados en el programa propiciando la intervención de
los alumnos.
El profesor del curso presentará demostraciones para fundamentar clases teóricas.
El profesor y los alumnos realizarán prácticas.
Los alumnos deberán asistir a clase habiendo leı́do lo que el profesor va a presentar.
De esta manera se facilitará la comprensión y los estudiantes estarán en mejores condiciones de hacer consultas en
clase.
5
10. EVALUACIONES
Evaluación Permanente 1 : 20 %
Examen Parcial : 30 %
Evaluación Permanente 2 : 20 %
Examen Final : 30 %
Referencias
[Brookshear, 2011] Brookshear, J. G. (2011). Computer Science: An Overview. Addison-Wesley.
[Guttag, 2013] Guttag, J. V. (2013). . Introduction To Computation And Programming Using Python. MIT Press.
[Sweigart, 2012] Sweigart, A. (2012). Making Games with Python & Pygame. MIT Press.
[Zelle, 2010] Zelle, J. (2010). Python Programming: An Introduction to Computer Science. Franklin, Beedle & Associates
Inc.