UNIVERSIDAD NACIONAL DE INGENIERIA
Facultad de Economía, Estadística y Ciencias Sociales
Unidad de Posgrado: Pre-Maestría Msc. Ingeniería Estadística
SILABUS
CURSO: : PROGRAMACIÓN CON PYTHON
I. DESCRIPCIÓN DEL CURSO
CICLO ACADÉMICO : SEMESTRE 2024-I
HORAS LECTIVAS : 21 HORAS (7 SEMANAS)
PRE-REQUISITOS : NINGUNO
DOCENTE : JEFFRI MURRUGARRA LLERENA
E-MAIL :
[email protected]II. SUMILLA DEL CURSO
Noción de algoritmo, dato, variable, instrucción y programa. Estructuras de control: secuencia,
selección e iteración. Tipos de datos escalares: enteros, reales, caracteres, rangos y enumeraciones.
Tipos estructurados básicos: vectores, matrices, registros y cadenas. Busqueda y ordenación.
Subprogramas: funciones, procedimientos, recursividad y programación dinámica. Introducción
a la estructura de datos: Colas, Pilas, Pilas de Prioridad, Diccionarios, Grafos.
III. COMPETENCIAS
Esta disciplina tiene como objetivo introducir conocimientos y técnicas necesarias para el diseño y
desarrollo de soluciones de problemas, a través de la construcción de algoritmos y programas que
utilizan los principios de la programación estructurada y orientada a objetos. El estudiante que
haya realizado esta asignatura deberá ser capaz de analizar problemas y desarrollar programas que
los resuelvan, utilizando para ello el lenguaje de programación Python. Dominar los comandos
básicos, estructurar datos en tipos simples y estructurados, utilizar conceptos de subprogramación
y recursividad. El curso cubre los siguientes temas: noción de algoritmo, noción de complejidad de
un algoritmo, dato, variable, instrucción y programa; estructuras de control: secuencia, selección
e iteración; tipos de datos escalares: enteros, reales, caracteres, cadenas; tipos estructurados
básicos: vectores, matrices, registros y cadenas; subprogramas: funciones con y sin retorno;
recursividad; programación dinámica. Introducción a la estructura de datos: Colas, Pilas, Pilas
de Prioridad, Diccionarios, Grafos.
IV. UNIDADES DE APRENDIZAJE
1. NOCIÓN DE ALGORITMO Y ESTRUCTURA DEL PROGRAMA PYTHON/03
HORAS
Introducción: paradigmas de programación, programa, algoritmo. Clases de Complejidad.
Algoritmo: asignación, entrada y salida. Estructura del programa Python. Elementos de
un programa. Tipos de datos. Declaración de variables, tipos de variables.
2. COMANDOS CONDICIONALES, BUCLES Y BUSQUEDAS/03 HORAS
Operadores y expresiónes aritméticas y lógicas. Declaración condicional IF. Declaración
condicional IF ELSE. ¿Operador condicional?. Anidamiento de comandos. Estructura de
selección múltiple: comando de cambio. FOR comando. WHILE comando. Busqueda
Lineal. Busqueda Binaria. Busqueda Ternaria.
1 de 3
UNIVERSIDAD NACIONAL DE INGENIERIA
Facultad de Economía, Estadística y Ciencias Sociales
Unidad de Posgrado: Pre-Maestría Msc. Ingeniería Estadística
3. ESTRUCTURA DE DATOS BÁSICAS, FUNCIONES y ORDENACIÓN/03
HORAS
Arreglos, Listas, Cadenas, Matrices. Creación de funciones. Variables locales y globables.
Funciones con y sin retorno. Funciones con multiretorno. Paquetes Conocidos en Python
(Numpy, Pandas, ...). Algoritmos de Ordenación.
4. RECURSIVIDAD Y PROGRAMACIÓN DINÁMICA/03 HORAS
Programas recursivos en lenguajes imperativos. Programación Dinámica.
5. ESTRUCTURA DE DATOS I/03 HORAS
Colas. Pilas. Pilas de Prioridad. Diccionarios.
6. ESTRUCTURA DE DATOS II/03 HORAS
Grafos. Búsqueda en Grafos.
7. PROGRAMACIÓN ORIENTADA A OBJETOS/03 HORAS
Diseño con objetos. Diseño con UML. Abstracción. Herencia. Polimorfismo. Encapsu-
lación. Testing y Desarrollo guiado por pruebas de software.
V. EXPERIENCIAS PRÁCTICAS
• Práctica 1: Introducción a Python, condicionales, bucles y búsqueda binaria.
• Práctica 2: Funciones, Estructura de Datos Básica y Ordenación.
• Práctica 3: Recursividad y Programación Dinamica.
• Práctica 4: Estructuras de Datos.
• Práctica 5: Programación orientada a objetos.
VI. METODOLOGÍA
El curso se desarrolla en sesiones de teoría, práctica. En las sesiones de teoría, el docente presenta
los conceptos, teoremas y aplicaciones. En las sesiones prácticas, se resuelven diversos problemas
y se analiza su solución. En todas las sesiones se promueve la participación activa del alumno.
VII. FÓRMULA DE EVALUACIÓN
Cálculo del Promedio Final:
(PC1 + PC2 + PC3 + PC4 + PC5)
PF =
5
PC1: Práctica 1
PC2: Práctica 2
PC3: Práctica 3
PC4: Práctica 4
PC5: Práctica 5
2 de 3
UNIVERSIDAD NACIONAL DE INGENIERIA
Facultad de Economía, Estadística y Ciencias Sociales
Unidad de Posgrado: Pre-Maestría Msc. Ingeniería Estadística
VIII. BIBLIOGRAFÍA
[1] Salvetti, Dirceu Douglas; Barbosa, Lisbete Madsen. Algoritmos. Sao Paulo: Makron Books,
c1998. ISBN 853460715X.
[2] Goodrich, Michael T.; Tamassia, Roberto. Projeto de algoritmos :fundamentos, análise e
exemplos da internet. Porto Alegre: Bookman, 2004. ISBN 8536303034.
[3] John Zelle. Python Programming: An Introduction to Computer Science, 3rd Ed. Franklin
Beedle, 2016.
[4] Steven F. Lott, Dusty Phillips. Python Object-Oriented Programming - Fourth Edition. Packt,
2021. ISBN 9781801077262.
[5] Steven Halim, Felix Halim, Suhendry Effendy. Competitive Programming, 4rd Ed. Lulu, 2022.
ISBN 9781716745522.
3 de 3