CRIADO CLAVERO, MARÍA ASUNCIÓN / GARCIA TOME, ANTONIO (Ilustración)
PRÓLOGO INTRODUCCIÓN CAPÍTULO 1. IDEAS GENERALES SOBRE PROGRAMACIÓN 1. INTRODUCCIÓN 2. ¿QUÉ ES UN ORDENADOR? 2.1. El elemento físico (Hardware) 2.2. El elemento lógico (Software) 2.3. El elemento humano 3. ¿QUÉ SIGNIFICA PROGRAMAR? 4. PARADIGMAS DE PROGRAMACIÓN 5. FASES DE LA PROGRAMACIÓN 5.1. Fase 1: resolución del problema 5.2. Fase 2: implementación 5.3. Fase 3: explotación 6. LENGUAJES DE PROGRAMACIÓN 6.1. Lenguaje Máquina 6.2. Lenguaje Ensamblador 6.3. Lenguajes Compilados 6.4. Lenguajes Interpretados 7. FASES EN LA CREACIÓN DE UN PROGRAMA 8. VERIFICACIÓN, DEPURACIÓN Y PRUEBA DE PROGRAMAS 8.1. Errores 8.2. Aprender a diseñar programas correctos 8.3. Recorridos e inspecciones de diseño y de código 8.4. Planes para depuración 8.5. Prueba de programas 8.6. Algunas consideraciones 9. UNAS PALABRAS SOBRE CALIDAD DEL SOFTWARE 10. ENTORNOS DE DESARROLLO 10.1. Cómo introducir, corregir y ejecutar un programa 11.EJERCICIOS CAPÍTULO 2. ALGORITMOS Y ESTRUCTURAS DE DATOS 1. INTRODUCCIÓN 2. LA MEMORIA CENTRAL DEL ORDENADOR 2.1. Memoria ROM y Memoria RAM 2.2. Estructura interna de la memoria 2.3. Los buses del sistema 2.4. Capacidad de la memoria. Unidades 3. LOS DATOS Y SU REPRESENTACIÓN 3.1. Tipos de datos numéricos 3.2. Tipos de datos lógicos 3.3. Tipos de datos alfanuméricos 4. IDENTIFICADORES 5.OPERADORES 5.1. Operadores aritméticos 5.2. Operadores relacionales 5.3. Operadores lógicos o booleanos 5.4. Operador de asignación 5.5. Operador de precedencia 5.6. Orden de evaluación de los operadores VARIABLES 6.1. Declaración de variables 6.2. Tipos de datos de las variables 6.3. Inicialización de variables 7.CONSTANTES 7.1. Tipos de datos de las constantes 8. EXPRESIONES 9.ALGORITMOS 9.1. Diseño descendente y algoritmos 9.2. Características de los algoritmos 9.3. Estructuras de programación 9.4. Formas de expresar los algoritmos: pseudocódigo 10. INSTRUCCIONES DE ENTRADA 11. INSTRUCCIONES DE SALIDA 12. EJERCICIO PRÁCTICO DE APLICACIÓN 13.EJERCICIOS CAPÍTULO 3. ESTRUCTURAS DE PROGRAMACIÓN 1. INTRODUCCIÓN 2. ESTRUCTURA DE CONTROL SECUENCIAL 3. ESTRUCTURA DE CONTROL ALTERNATIVA 3.1. Si - en_otro_caso 3.2. Sianidados 3.3. Si - en_otro_caso - si 4. ESTRUCTURA DE CONTROL REPETITIVA, CÍCLICA O ITERATIVA 4.1. Anidamiento de bucles 5. CONTADORES Y ACUMULADORES 5.1.Contadores 5.2. Acumuladores 6. DATO CENTINELA 7. SWITCHES, FLAGS O INDICADORES 8. TIPOS DE BUCLES 8.1. Bucles controlados por contado 8.2. Bucles controlados por sucesos 9. SUBTAREAS ITERATIVAS 9.1. Bucles contadores 9.2. bucles sumadores 10. CÓMO DISEÑAR UN BUCLE 10.1. Invariante del bucle 11. ESTRUCTURA DE SELECCIÓN MÚLTIPLE 11.1. Definición y sintaxis 11.2. Aplicación a procesos controlados por menús 12. OTRAS ESTRUCTURAS REPETITIVAS 12.1. Bucles repetir 12.2. Bucle controlado por contador Para 13. CRITERIOS PARA LA ELECCIÓN DE UNA SENTENCIA ITERATIVA 14. NOTAS SOBRE EL USO DE NÚMEROS ALEATORIOS 15.EJERCICIOS CAPÍTULO 4. PRINCIPIOS DEL LENGUAJE C 1. INTRODUCCIÓN 1.1. Orígenes del lenguaje 1.2. Características generales 2. ESTRUCTURA GENERAL DE UN PROGRAMA EN C 2.1. Comandos del preprocesador 2.2. Definiciones de constantes 2.3. Definiciones de tipos 2.4. Declaración de prototipos de funciones y procedimientos 2.5. Declaración de objetos globales 2.6. Función main 2.7. Definición de subprogramas 3. ALGUNOS COMPONENTES LÉXICOS DEL LENGUAJE 4. TIPOS DE DATOS ELEMENTALES 4.1. Modificadores de tipo 5. VARIABLES 5.1. Declaración de variables 5.2. ¿Dónde se declaran las variables en C? 5.3. Inicialización de las variables 6. MODIFICADORES DE ALMACENAMIENTO 6.1. automatic o auto (sólo para objetos locales) 6.2. register (sólo para objetos locales) 6.3. static (para objetos, funciones y uniones anónimas) 6.4. extern (para objetos y funciones) 7. CONSTANTES 7.1. Constantes literales 7.2. Constantes simbólicas 8. OPERADORES 8.1. Operadores aritméticos 8.2. Operadores relacionales 8.3. Operadores lógicos 8.4. Otros operadores 9. EXPRESIONES 9.1. Expresiones lvalue y rvalue 9.2. Conversiones de tipo 9.3. Espaciado y paréntesis 9.4. Precedencia y asociatividad de operadores 10. FUNCIONES BÁSICAS DE ENTRADA/SALIDA EN C 10.1. Salida estándar con formato: printf 10.2. Entrada estándar con formato: scanf 11.Sentencias 11.1. Simples 11.2. Sentencia compuesta o bloque 12. ESTRUCTURA SECUENCIAL 13. ESTRUCTURAS DE SELECCIÓN SIMPLE 13.1. ifanidados 13.2.if-else-if 14. ESTRUCTURAS REPETITIVAS 14.1. Sentencia de iteración while 14.2. Proposición do while 14.3. Proposición for 15. ESTRUCTURA DE SELECCIÓN MÚLTIPLE 15.1. switch anidados 16. PROPOSICIONES ESPECIALES 16.1.break 16.2. continue 16.3.goto 17.EJERCICIOS CAPÍTULO 5. DISEÑO MODULAR: SUBPROGRAMAS 1. INTRODUCCIÓN 2. DISEÑO MODULAR: ENFOQUE TOP-DOWN 3. MÓDULOS. DIAGRAMAS JERÁRQUICOS 4. METODOLOGÍA. DOCUMENTACIÓN 4.1. Metodología 4.2. Documentación 5. PROGRAMA PRINCIPAL Y SUBPROGRAMAS 5.1. El programa principal 5.2. Subprogramas 5.3. Cohesión y Acoplamiento 6. TIPOS DE SUBPROGRAMAS 6.1. Según su ubicación 6.2. Según el valor de retorno 7. VARIABLES DE ENLACE O PARÁMETROS 7.1. Tipos de parámetros 7.2. Paso de parámetros 8. OBJETOS LOCALES Y GLOBALES 9. PROCEDIMIENTOS Y FUNCIONES 10. DISEÑO DE LA INTERFAZ 10.1. Pasos para el diseño de interfaz 10.2. ¿Cómo queda el diseño del algoritmo? 11. LLAMADAS A UN SUBPROGRAMA DESDE DISTINTOS MÓDULOS 12.EJERCICIOS CAPÍTULO 6. FUNCIONES EN C++ 1. INTRODUCCIÓN 2. FUNCIONES EN C++ 2.1. Prototipos de funciones 2.2. Definición de funciones en C++ 2.3. Llamada a una función 3. SENTENCIA return 3.1. Vuelta de una función 3.2. Tipos de valores devueltos por funciones de C 4. FUNCIONES Y PROCEDIMIENTOS 5. REGLAS DE ÁMBITO Y TIEMPO DE VIDA DE LAS FUNCIONES 6. ARGUMENTOS DE LAS FUNCIONES 6. 1. Paso por valor 6.2. Paso por referencia 6.3. Paso por dirección 7.Recursividad 8. EL PREPROCESADOR 8.1. Definiciones de macros #define 8.2. Inclusión de ficheros: directiva #include 8.3. Compilación condicional 8.4. Otras directivas 9. DISEÑO DE ARCHIVOS CABECERAS Y LIBRERÍAS DE USUARIO 9.1. Resguardos y conductores 9.2. Archivos de cabecera y librerías de usuario en C++ 10. CONSTRUCCIÓN DE PROYECTOS 11. CÓMO DOCUMENTAR UNA FUNCIÓN 12.EJERCICIOS CAPÍTULO 7. ESTRUCTURAS ESTÁTICAS DE DATOS: ARRAYS 1. INTRODUCCIÓN 2. CONCEPTO DE ESTRUCTURA DE DATOS 2.1. Abstracción de datos 2.2. Clasificación de las estructuras de datos 3. PERSPECTIVAS DE ANÁLISIS DE UNA ESTRUCTURA DE DATOS 4. ARRAYS UNIDIMENSIONALES 4.1. Nivel Lógico 4.2. Nivel de Implementación 4.3. Nivel de aplicación o uso de arrays en programas 5. PASO DE ARRAYS A FUNCIONES 6. CADENAS DE CARACTERES 6.1. Declaración e inicialización 6.2. Lectura 6.3.Escritura 6.4. Definición de un tipo de dato cadena
Este libro ha sido desarrollado específicamente para que cubra el temario oficial del módulo Programación en lenguajes estructurados del Ciclo Formativo de Grado Superior Técnico Superior de Desarrollo de Aplicaciones Informáticas, así como para estudiantes universitarios de Escuelas y Facultades de Informática, Ingeniería y Ciencias que deseen aprender paso a paso a programar usando un lenguaje cuyo conocimiento es básico para los profesionales de la informática. También resulta de gran interés para el desarrollo de cursos de formación continua y para aquellos usuarios que deseen adquirir una base sólida en metodología de programación.