Unidad Didáctica I
TEMA 1. INTRODUCCIÓN
- Máquinas y programas.
- Programación e ingeniería de software.
- Lenguajes de programación.
- Compiladores e Intérpretes.
- Modelos abstractos de cómputo.
- Elementos de la programación imperativa.
- Evolución de la programación.
TEMA 2. ELEMENTOS BÁSICOS DE LA PROGRAMACIÓN Resumen
- Lenguaje C±.
- Notación BNF.
- Valores y tipos.
- Representación de valores constantes.
- Tipos predefinidos.
- Expresiones aritméticas.
- Operaciones de escritura simple.
- Estructura de un programa completo.
TEMA 3. CONSTANTES Y VARIABLES Resumen
- El vocabulario de C±.
- Identificadores.
- Constantes.
- Variables.
- Operaciones de lectura simple.
- Estructura de un programa con constantes y variables.
TEMA 4. METODOLOGÍA DE DESARROLLO DE PROGRAMAS (I)
- La Programación como resolución de problemas.
- Descomposición de un problema en subproblemas.
- Desarrollo de programas por refinamientos sucesivos.
- Aspectos de estilo.
TEMA 5. ESTRUCTURAS BÁSICAS DE LA PROGRAMACIÓN IMPERATIVA Resumen
- Programación estructurada.
- Expresiones condicionales.
- Estructuras básicas en C±.
TEMA 6. METODOLOGÍA DE DESARROLLO DE PROGRAMAS (II) Resumen
- Desarrollo con esquemas de selección e iteración.
- Ejemplos de desarrollo con esquemas.
- Verificación de programas.
- Eficiencia de programas. Complejidad algorítmica.
Unidad Didáctica II
TEMA 7. FUNCIONES Y PROCEDIMIENTOS
- Concepto de subprograma.
- Funciones.
- Procedimientos.
- Paso de argumentos.
- Visibilidad. estructura de bloques.
- Recursividad de subprogramas.
- Problemas en el uso de subprogramas.
TEMA 8. METODOLOGÍA DE DESARROLLO DE PROGRAMAS (III) Resumen
- Operaciones abstractas.
- Desarrollo por refinamiento usando abstracciones.
- Programas robustos.
TEMA 9. DEFINICIÓN DE TIPOS Resumen
- Tipos definidos.
- Tipos enumerados.
- Tipo predefinido bool.
- Tipos estructurados.
- Tipo formación y su necesidad.
- Tipo vector.
- Vector de caracteres: Cadena (String).
- Tipo tupla y su necesidad.
- Tipo registro (struct).
TEMA 10. AMPLIACIÓN DE ESTRUCTURAS DE CONTROL
- Estructuras complementarias de iteración.
- Estructuras complementarias de selección.
- Equivalencia entre estructuras.
TEMA 11. ESTRUCTURAS DE DATOS
- Argumentos de tipo vector abierto.
- Formaciones anidadas. Matrices.
- El esquema unión.
- Esquemas de datos y esquemas de acciones.
- Estructuras combinadas.
Unidad Didáctica III
TEMA 12. ESQUEMAS TÍPICOS DE OPERACIÓN CON FORMACIONES
- Esquema de recorrido.
- Búsqueda secuencial.
- Inserción.
- Ordenación por inserción directa.
- Búsqueda por dicotomía.
- Simplificación de las condiciones de contorno.
TEMA 13. PUNTEROS Y VARIABLES DINÁMICAS
- Estructuras de datos no acotadas.
- La estructura secuencia.
- Variables dinámicas.
- Realización de secuencias mediante punteros.
- Punteros y paso de argumentos.
- Punteros y vectores en C y C++.
TEMA 14. TIPOS ABSTRACTOS DE DATOS
- Concepto de tipo abstracto de datos (TAD).
- Realización de tipos abstractos en C±.
- Metodología de desarrollo basada en abstracciones.
TEMA 15. MÓDULOS
- Concepto de módulo.
- Módulos en C±.
- Desarrollo modular basado en abstracciones.
