Transparencias de programación
En esta página encontrarás las más de 1.000 transparencias que se utilizan en la asignatura Fundamentos de Programación impartida en la Facultad de Informática de la Universidad Complutense de Madrid desde donde se organiza la Olimpiada Informática de Madrid.
Fueron creadas por el profesor Luis Hernández Yañez en 2011 y son revisadas periódicamente. Han pasado por las manos de más de 2.000 estudiantes. Los ficheros que os dejamos aquí están en formato PDF pensados para ser leídos en pantalla, pero no para ser impresos. El autor las proporciona en otros formatos en su web.
Estas transparencias son una buena fuente de conocimiento para introducirte en la programación en C++ en general. Para la preparación de la Olimpiadas los temas I y VIII no son muy relevantes, y el tema IX rara vez lo es (solo si hay que implementar estructuras de datos específicas). Además, la parte de ordenación del tema VII debe utilizarse solo como ejemplo de algoritmos, pero durante un concurso es mucho mejor utilizar las funciones de ordenación que proporcione el lenguaje.
Recuerda que el siguiente paso es aprender conceptos de algoritmia. Aquí puedes encontrar algunos enlaces.
Computadoras y programación
Una introducción a la historia de la informática y la programación de ordenadores.
Tipos e instrucciones I
Tipos de variables, expresiones, condicionales, primeros bucles y entrada/salida, y un anexo con detalles técnicos sobre los tipos de datos básicos.
Tipos e instrucciones II
Condicionales anidados, más bucles y primeros pasos con vectores, con un anexo sobre el operador ternario y otro con ejemplos de secuencias.
La abstracción procedimental
Funciones, argumentos y resultados. Diseño descendente. Y un anexo con detalles adicionales.
Tipos de datos estructurados
Vectores, cadenas, estructuras, listas de longitud variable con capacidad máxima limitada. Y un anexo sobre cadenas al estilo de C.
Recorrido y búsqueda en arrays
Recorrido y búsqueda con centinela y contador. Arrays multidimensionales.
Algoritmos de ordenación
Introducción a la ordenación y búsqueda (binaria) en colecciones ordenadas. Y un anexo con detalles adicionales.
Programación modular
Proyectos de varios archivos. Preprocesador. Inclusiones. Módulos y bibliotecas. Y un anexo con ejemplos.
Punteros y memoria dinámica
Punteros y uso de memoria dinámica, junto con un anexo sobre aritmética de punteros y referencias.