Вы находитесь на странице: 1из 16

Lenguaje de Programación Estructurado

¡Bienvenidos!
ST 202W
Clase 0
17 de marzo 2017
Agenda
 Objetivos del curso
 Logística
 Introducción al curso
 Nuestro primer programa en C++
 Examen de entrada

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 2


Objetivos del curso
 Aprender cómo modelar y resolver problemas complejos utilizando
computadores.
o Explorar abstracciones comunes para representar problemas
o Modelar y resolver problemas en forma recursiva
o Analizar cuantitativamente distintas alternativas para resolver problemas

 Aprender los fundamentos de la programación estructurada


o Aprender el lenguaje de programación C/C++ a nivel intermedio
o Aprender e implementar algoritmos y estructuras de datos clásicas

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 3


Agenda
 Objetivos del curso
 Logística
 Introducción al curso
 Nuestro primer programa en C++
 Examen de entrada

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 4


Recursos
 Anuncios vía Facebook:
https://www.facebook.com/groups/lpe.uni/

 Material vía Dropbox:


https://goo.gl/tctmKM

 Entregables y consultas vía email:


rpalaciosr@uni.edu.pe

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 5


Recursos

Software Bibliografía
 En Windows
Microsoft Visual Studio Community 2017
(Recomendado)
https://www.visualstudio.com/vs/community/

Dev-C++ 5.11 (Portable)


http://orwelldevcpp.blogspot.com/

 En Linux:  Programming Abstractions in C++, Eric Roberts


GNU Compiler Collection (GCC) (disponible en el Dropbox)

 En Mac:  Stanford CS 106B – Programming Abstractions in C++


GNU Compiler Collection (GCC) o XCode http://web.stanford.edu/class/cs106b/

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 6


Sistema de Calificación ‘F’

Examen 4 Prácticas Promedio Final


Final (EF) Calificadas PF = (2*EF + EP + PP) / 4

Examen
Proyecto Promedio de Prácticas
(no PP = (PC1 + PC2 + PC3 +
Parcial (EP)
Promedio eliminable)
del Curso
PC4 - min(PC1, PC2, PC3,
PC4) + Proyecto) / 4
Puntos Extra:
 Hasta 1 punto extra en cada PC por enviar todas las soluciones, corregidas,
dentro de las 72h posteriores a cada PC.
 El equivalente a 0.5 puntos de PC por cada problema resuelto en
codeforces.com, siempre y cuando el problema haya sido resuelto por menos de
4000 personas en todo el mundo. Puntos aplican también para EP y EF.
17/03/2016 ST 202W - Lenguaje de Programación Estructurado 7
Sistema de Calificación ‘F’
Exámenes y Prácticas
 Sábados de 2 a 5pm (3 horas)
 Con computadora o laptop propia
 Pueden usar ejemplos hechos en clase y código propio
 Pueden usar PPTs y/o libros (no recomendado)
 Prohibido internet y celulares

Proyecto (No eliminable):


 Implementación de una aplicación en C++ que soporte creación, lectura, modificación y
eliminación de registros en un banco de datos (archivo o base de datos).
 Equipos de 3 o 4 alumnos. Enviar integrantes y nombre de equipo hasta el día de la PC1.
 El tema será asignado oportunamente.

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 8


Cronograma

Cronograma del Curso


Mar 17 Clase 0: Introducción y Examen de Entrada
Semana 1
Mar 18 Clase 1: Variables, Tipos de Datos y Expresiones
Mar 24 Clase 2: Arreglos, Matrices, Cadenas, Arreglos de Cadenas
Semana 2
Mar 25 Clase 3: Estructuras de Control
Mar 31 Clase 3: Estructuras de Control
Semana 3
Abr 1 Práctica Dirigida #1: Estructuras de Control, Arreglos y Cadenas
Abr 7 Clase 4: Funciones y Recursividad
Semana 4
Abr 8 Práctica Calificada #1
Abr 14 Feriado
Semana 5
Abr 15 Práctica Dirigida #2: Funciones y Recursividad
Abr 21 Clase 5.1: Algoritmos de Ordenamiento y Búsqueda / Clase 5.2: Complejidad Algorítmica
Semana 6
Abr 22 Práctica Calificada #2
Abr 28 Clase 6: Estructuras y Operadores / Clase 7: Geometría Computacional Básica
Semana 7
Abr 29 Práctica Dirigida #3: Estructuras y Operadores

Semana 8
May 6 EXAMEN PARCIAL

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 9


Cronograma

May 12 Clase 8.1: Archivos de Texto / Clase 8.2: Archivos Binarios


Semana 9
May 13 Práctica Dirigida #4: Archivos
May 19 Clase 8.3: Archivos de Texto - Ordenamiento
Semana 10
May 20 Avance de Trabajo / Exposición #1
May 26 Clase 9: Punteros, Referencias y Asignación Dinámica de Memoria
Semana 11
May 27 Práctica Calificada #3
Jun 2 Clase 10: Arreglos Dinámicos, Listas, Pilas y Colas
Semana 12
Jun 3 Práctica Dirigida #5: Arreglos Dinamicos, Listas, Pilas, Colas
Jun 9 Clase 11: Árboles Binarios
Semana 13
Jun 10 Avance de Trabajo / Exposición #2
Jun 16 Clase 12: Grafos / Clase 13: Algoritmos en Árboles y Grafos
Semana 14
Jun 17 Práctica Calificada #4
Jun 23 Práctica Dirigida #6: Árboles y Grafos
Semana 15
Jun 24 Entregable Final / Exposición #3

Semana 16
Jul 1 EXAMEN FINAL

Semana 17

Semana 18
Jul 15 EXAMEN SUSTITUTORIO

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 10


Agenda
 Objetivos del curso
 Logística
 Introducción al curso
 Nuestro primer programa en C++
 Examen de entrada

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 11


Lenguaje de Programación Estructurado
INTRODUCCIÓN

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 12


¿Por qué aprender a programar?

https://code.org/
https://www.youtube.com/watch?v=nKIu9yen5nc
(subtítulos en español disponibles)
17/03/2016 ST 202W - Lenguaje de Programación Estructurado 13
Agenda
 Objetivos del curso
 Logística
 Introducción al curso
 Nuestro primer programa en C++
 Examen de entrada

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 14


Hola Mundo
#include <iostream> /*
#include <cmath> iostream es una libreria estandar para funciones
de entrada y salida (input / output)
using namespace std;
cmath es una libreria estandar para funciones
int main() matematicas (raiz, logaritmo, exponenciacion,
{ etc)
cout << "Hola" << endl;
cout << "Soy un programa en C++" << endl; ‘using namespace std’ indica que utilizaremos
librerias estandares de C++ tales como iostream o
int a = 3; cmath
int b = 4;
int h = sqrt(a * a + b * b); ‘int main()’ es la Funcion Principal del
programa, y debe retornar el valor 0 o un codigo
cout << h << endl; de error

return 0; a y b variables enteras


}
sqrt es una funcion definida en <cmath> que
calcula la raiz cuadrada de un numero

Finalmente el programa retorna 0 (exito)


*/

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 15


Agenda
 Objetivos del curso
 Logística
 Introducción al curso
 Nuestro primer programa en C++
 Examen de entrada

17/03/2016 ST 202W - Lenguaje de Programación Estructurado 16