Product Documents

Introducción a la programación estructurada en C

Gregorio Martín Quetglás, Francisco A. Martínez García

Col·lecció: Educació. Sèrie Materials, 64

ISBN: 978-84-370-5666-1

Matèria: ciències

Submatèries: informàtica i electrònica

Idioma: castellà

Any ed.: 2003

Enquadernació: rústica

Format: 17 x 24 cm

Pàgines: 256 pp.

15,00 €

Sinopsi

Detalles

Aquest llibre pretén introduir el lector en la programació d'ordinadors utilitzant el model estructurat i el suport del llenguatge de programació C, que és un estàndard industrial de facto i ha estat la base d'altres llenguatges àmpliament acceptats com C++. S'hi il·lustren els continguts a través de l'exposició de nombrosos exemples comentats i s'adopta en tot moment un enfocament assequible i alhora rigorós, lluny del que entenem per un manual a l'ús, nascut de l'experiència de sis anys de docència en assignatures de les titulacions d'Enginyeria Informàtica i Enginyeria Tècnica de Telecomunicacions.

Índex

Indice

Índice
INTRODUCCIÓN.
Capítulo 1. El computador y el procesamiento de la información
1.1 Conceptos previos a la definición de información. La necesidad de un sistema
1.2 Concepto de información
1.2.1 Definición de C. E. Shannon (1948)
1.2.2 La teoría de la complejidad algorítmica. Definición de Kolmogorov - Solomonoff - Chaitin (1960-65)
1.3 Modelos de computación
1.3.1 Modelo de los autómatas regulares
1.3.2 Modelo de la máquina de Turing (1936)
1.4 Partes funcionales de un computador actual
1.4.1 Antecedentes del ordenador actual. Máquina de Von Newmann
1.4.2 Descripción modular del ordenador actual
1.4.3 El juego de instrucciones de la CPU
1.4.4 Descripción operacional
1.5 Ejercicios y cuestiones
Capítulo 2. Algoritmos y programas
2.1 Concepto de algoritmo. La tesis de Church-Turing
2.2 Concepto de programa y tipos de metodologías de programación
2.2.1 Definición
2.2.2 Concepto de programa estructurado y el paradigma de la programación estructurada
2.2.3 Otros paradigmas de programación
2.3 Estructura y representación de programas estructurados
2.3.1 Modularidad y uso de bibliotecas
2.3.2 Compilador e intérprete
2.4 Concepto de sistema operativo
2.5 El concepto de ingeniería del software
2.6 Ejercicios y cuestiones
Capítulo 3. Elementos básicos de la programación estructurada
3.1 Uso de datos en la programación. Atributos de los datos. Concepto de variable
3.1.1 Atributos de los datos
3.2 Las clases de datos
3.3 Tipos de datos simples
3.3.1 Tipo entero
3.3.2 Tipo de número en coma flotante
3.3.3 Tipo carácter
3.3.4 Tipo booleano
3.3.5 Tipo puntero
3.3.6 Tipo enumerado
3.4 Conversión de tipos
3.5 Expresiones, enunciados y sentencias de control de flujo
3.5.1 Expresiones y enunciados o sentencias atómicas.
3.5.2 Entrada/salida estándar en el lenguaje C
3.5.3 Sentencias de control de flujo de la información
3.6 Concepto de subprograma. Ámbito y paso de variables en subprogramas
3.6.1 Subprogramas, características básicas
3.6.2 Ámbito de las variables de los subprogramas
3.6.3 El modelo de ejecución de programas compilados. Relación con el concepto de encapsulamiento
3.6.4 Tipos de variables según su almacenamiento en el programa en ejecución
3.6.5 Encapsulamiento
3.7 Recursividad
3.8 Ejercicios y cuestiones
Capítulo 4. Representación de la información en el computador
4.1 Aritmética finita
4.2 Sistemas de numeración utilizados en computadoras. Sistemas base N
4.2.1 Sistema binario (Sistema base 2)
4.2.2 Sistema octal (Sistema base 8)
4.2.3 Sistema hexadecimal (Sistema base 16)
4.2.4 Cambios más comunes entre los sistemas anteriores
4.3 Expresión de números negativos en código binario. Complemento a 2
4.4 Representación de números en coma flotante (subconjunto de números reales)
4.4.1 Principios de la notación en coma flotante
4.5 Norma 754 de IEEE para representación de números en punto flotante
4.6 Algunas operaciones aritméticas en código binario
4.6.1 Operaciones unarias: Rotación y desplazamiento
4.6.2 Operaciones binarias
4.6.3 Cálculo de otros elementos matemáticos usuales
Capítulo 5. Tipos de datos compuestos. Estructuras de datos
5.1 Concepto de constructor de tipo
5.2 Tipos de datos compuestos homogéneos
5.2.1 Vectores (arrays)
5.2.2 Matrices multidimensionales
5.2.3 Cadenas de caracteres
5.3 Tipos de datos compuestos heterogéneos
5.3.1 Registros
5.4 El puntero como herramienta de construcción de estructuras de datos
5.5 Concepto de tipo abstracto de datos (TAD)
5.5.1 Definición de abstracción y breve caracterización de los TADs que se adaptan a ella
5.5.2 El TAD en la práctica
5.5.3 TAD como contenedor de datos
5.6 Ejercicios y cuestiones
Capítulo 6. Ficheros
6.1 Niveles lógico y físico de los ficheros
6.1.1 Nivel físico
6.1.2 Nivel lógico
6.2 Clasificaciones de los ficheros
6.3 Ficheros con operaciones de acceso secuencial
6.3.1 Ficheros de tipo texto sin formato
6.3.2 Ficheros de tipo texto con formato
6.3.3 Funciones de acceso
6.3.4 Ficheros binarios
6.4 Ficheros con operaciones de acceso directo
6.4.1 Operación de actualización de datos en ficheros con acceso directo
6.5 Algunos modelos reales de ficheros con estos accesos
6.5.1 Ficheros con índice (indexados)
6.5.2 Ficheros indexados con una función de dispersión
6.5.3 Acceso aleatorio usando una función de dispersión
6.6 Ejercicios y cuestiones
Capítulo 7. Introducción a la algoritmia
7.1 Concepto de coste computacional. Medida del coste temporal y espacial
7.1.1 Definición de coste temporal y espacial
7.1.2 Medida del coste temporal usando pasos
7.1.3 Medida de la complejidad temporal usando instrucciones críticas
7.1.4 El coste espacial
7.1.5 Concepto de talla de un algoritmo
7.1.6 Concepto de instancias de un problema. Coste medio, mejor caso y peor caso
7.1.7 Algunas notaciones asintóticas para definir costes. Las notaciones O, y 
7.1.8 El compromiso entre el coste espacial y el coste temporal
7.2 Algoritmos de búsqueda
7.2.1 Búsqueda lineal
7.2.2 Búsqueda binaria
7.3 Algoritmos de ordenación
7.3.1 Algoritmos directos basados en comparaciones
7.3.2 Algoritmos rápidos basados en comparaciones
7.3.3 Ordenación con coste menor que n log n. Ordenación por distribución
7.4 Ejercicios y cuestiones
Capítulo 8. Breve referencia de algunas estrategias de programación
8.1 Divide y vencerás
8.2 Algoritmos voraces
8.3 Métodos de programación dinámica
8.4 Método de vuelta atrás (BackTracking)
8.5 Método de ramificación y poda
APÉNDICE
Aplicación del diseño descendente a un problema
BIBLIOGRAFÍA
ÍNDICE ANALÍTICO

Citació

Martín Quetglás, G. [Gregorio] & Martínez García, F. A. [Francisco Antonio] (2003). Introducción a la programación estructurada en C. Universitat de València.

Martín Quetglás, Gregorio y Martínez García, Francisco Antonio. Introducción a la programación estructurada en C. Universitat de València, 2003.

MARTÍN QUETGLÁS, Gregorio y MARTÍNEZ GARCÍA, Francisco Antonio. Introducción a la programación estructurada en C. Valencia: Universitat de València, 2003. ISBN 978-84-370-5666-1.

Martín Quetglás, Gregorio y Martínez García, Francisco Antonio. Introducción a la programación estructurada en C. Valencia: Universitat de València; 2003. 256 p.

Copiar al portapapeles