Imagen de cubierta local
Imagen de cubierta local

Fundamentos de programación : algoritmos y estructuras de datos / Luis Joyanes Aguilar.

Por: Idioma: Español Detalles de publicación: Madrid : McGraw-Hill, 1996Edición: 2daDescripción: 714 pTipo de contenido:
  • texto
Tipo de medio:
  • sin mediación
Tipo de soporte:
  • volumen
ISBN:
  • 8448106032
Tema(s):
Contenidos:
Valoración
    Valoración media: 0.0 (0 votos)
Existencias
Tipo de ítem Biblioteca actual Signatura topográfica Estado Fecha de vencimiento Código de barras Reserva de ítems
Libro Libro Facultad Regional Santa Fe - Biblioteca "Rector Comodoro Ing. Jorge Omar Conca" 004.42 J84 (Navegar estantería(Abre debajo)) Sólo Consulta 6517
Total de reservas: 0

Incluye guías de sintaxis: pascal, turbo / Borland pascal, Cy C++

CONTENIDO
Prólogo de la segunda edición
Capítulo 1. Algoritmos y programas
1.1. Los sistemas de procesamiento de la información
1.2. Concepto de algoritmo
1.2.1. Características de los algoritmos
1.3. Los lenguajes de programación
1.3.1. Instrucciones a la computadora
1.3.2. Lenguajes máquina
1.3.3. Lenguajes de bajo nivel
1.3.4. Lenguajes de alto nivel
1.3.5. Traductores de lenguaje
1.3.5.1. Intérpretes
1.3.5.2. Compiladores
1.3.6. La compilación y sus fases
1.4. Datos, tipos de datos y operaciones primitivas
1.4.1. Datos numéricos
1.4.2. Datos lógicos (booleanos)
1.4.3. Datos tipo carácter y tipo cadena
1.5. Constantes y variables
1.6. Expresiones
1.6.1. Expresiones aritméticas
1.6.1.1. Reglas de prioridad
1.6.2. Expresiones lógicas (booleanas)
1.6.2.1. Operadores de relación
1.6.2.2. Operadores lógicos
1.6.2.3. Prioridad de los operadores en las expresiones lógicas
1.7. Funciones internas
1.8. La operación de asignación
1.8.1. Asignación aritmética
1.8.2. Asignación lógica
1.8.3. Asignación de cadenas de caracteres
1.8.4. Conversión de tipo
1.9. Entrada y salida de información
Actividades de programación resueltas
Ejercicios
Capítulo 2. La resolución de problemas con computadoras y las herramientas de programación
2.1. La resolución de problemas
2.2. Análisis del problema
2.3. Diseño del algoritmo
2.3.1. Escritura inicial del algoritmo
2.4. Resolución del problema mediante computadora
2.5. Representación gráfica de los algoritmos
2.5.1. Diagramas de flujo
2.6. Diagramas de Nassi-Schneiderman (N-S)
2.7. Pseudocódigo
Actividades de programación resueltas
Ejercicios
Capítulo 3. Estructura general de un programa
3.1. Concepto de programa
3.2. Partes constitutivas de un programa
3.3. Instrucciones y tipos de instrucciones
3.4. Tipos de instrucciones
3.4.1. Instrucciones de asignación
3.4.2. Instrucciones de lectura de datos (entrada)
3.4.3. Instrucciones de escritura de resultados (salida)
3.4.4. Instrucciones de bifurcación
3.5. Elementos básicos de un programa
3.5.1. Bucles
3.5.2. Contadores
3.5.3. Acumulador
3.5.4. Decisión o selección
3.5.5. Interruptores
3.6. Escritura de algoritmos/programas
3.6.1. Cabecera del programa o algoritmo
3.6.2. Declaración de variables
3.6.3. Declaración de constantes numéricas
3.6.4. Declaración de constantes y variables carácter
3.6.5. Comentarios
3.6.6. Estilo de escritura de algoritmos/programas
Actividades de programación resueltas
Ejercicios
Capítulo 4. Introducción a la programación estructurada
4.1. Técnicas de programación
4.2. Programación modular
4.2.1. Tamaño de los módulos
4.2.2. Implementación de los módulos
4.3. Programación estructurada
4.3.1. Recursos abstractos
4.3.2. Diseño descendente (top-down)
4.3.3. Teorema de la programación estructurada: estructuras básicas
4.4. Estructura secuencial
4.5. Estructuras selectivas
4.5.1. Alternativa simple (si-entonces / if-then)
4.5.2. Alternativa doble (si-entonces-si_no / if-then-else)
4.5.3. Alternativa múltiple (segun_sea, caso_de / case)
4.6. Estructuras repetitivas
4.6.1. Estructura mientras (while)
4.6.2. Estructura repetir (repeat)
4.6.3. Estructura desde/para (for)
4.6.4. Salidas internas de los bucles
4.7. Estructuras de decisión anidadas
4.8. Estructuras repetitivas anidadas
4.9. La instrucción ir_a (goto)
Actividades de programación resueltas
Ejercicios
Capítulo 5. Subprogramas (subalgoritmos): procedimientos y funciones
5.1. Introducción a los subalgoritmos o subprogramas
5.2. Funciones
5.2.1. Declaración de funciones
5.2.2. Invocación a las funciones
5.3. Procedimientos (subrutinas)
5.3.1. Sustitución de argumentos/parámetros
5.4. Ambito: variables locales y globales
5.5. Comunicación con subprogramas: paso de parámetros
5.5.1. Paso de parámetros
5.5.2. Paso por valor
5.5.3. Paso por referencia
5.5.4. Comparaciones de los métodos de paso de parámetros
5.5.5. Síntesis de la transmisión de parámetros
5.6. Funciones y procedimientos como parámetros
5.7. Los efectos laterales
5.7.1. En procedimientos
5.7.2. En funciones
5.8. Recursión (recursividad)
Actividades de programación resueltas
Ejercicios
Capítulo 6. Estructuras de datos (arrays)
6.1. Introducción a las estructuras de datos
6.2. Arrays unidimensionales: los vectores
6.3. Operaciones con vectores
6.3.1. Asignación
6.3.2. Lectura/escritura de datos
6.3.3. Acceso secuencial al vector (recorrido)
6.3.4. Actualización de un vector
6.4. Arrays de varias dimensiones
6.4.1. Arrays bidimensionales (tablas/matrices)
6.5. Arrays multidimensionales
6.6. Almacenamiento de arrays en memoria
6.6.1. Almacenamiento de un vector
6.6.2. Almacenamiento de arrays multidimensionales
Actividades de programación resueltas
Ejercicios
Capítulo 7. Las cadenas de caracteres
7.1. Introducción
7.2. El juego de caracteres
7.2.1. Código ASCII
7.2.2. Código EBCDIC
7.3. Cadena de caracteres
7.4. Datos tipo carácter
7.4.1. Constantes
7.4.2. Variables
7.4.3. Instrucciones básicas con cadenas
7.5. Operaciones con cadenas
7.5.1. Cálculo de la longitud de una cadena
7.5.2. Comparación
7.5.3. Concatenación
7.5.4. Subcadenas
7.5.5. Búsqueda
7.6. Otras funciones de cadenas
7.6.1. Insertar
7.6.2. Borrar
7.6.3. Cambiar
7.6.4. Conversión cadenas/números
Actividades de programación resueltas
Ejercicios
Capítulo 8. Archivos (ficheros)
8.1. Noción de archivo: estructura jerárquica
8.1.1. Campos
8.1.2. Registros
8.1.3. Archivos (ficheros)
8.1.4. Bases de datos
8.1.5. Estructura jerárquica
8.2. Conceptos y definiciones: terminología
8.2.1. Clave (indicativo)
8.2.2. Registro físico o bloque
8.2.3. Factor de bloqueo
8.3. Soportes secuenciales y direccionables
8.4. Organización de archivos
8.4.1. Organización secuencial
8.4.2. Organización directa
8.4.3. Organización secuencial indexada
8.5. Operaciones sobre archivos
8.5.1. Creación de un archivo
8.5.2. Consulta de un archivo
8.5.3. Actualización de un archivo
8.5.4. Clasificación de un archivo
8.5.5. Reorganización de un archivo
8.5.6. Destrucción de un archivo
8.5.7. Reunión, fusión de un archivo
8.5.8. Rotura/estallido de un archivo
8.6. Gestión de archivos
8.6.1. Crear un archivo
8.6.2. Abrir un archivo
8.6.3. Cerrar archivos
8.6.4. Borrar archivos
8.7. Mantenimiento de archivos
8.7.1. Operaciones sobre registros
8.8. Procesamiento de archivos secuenciales (algoritmos)
8.8.1. Creación
8.8.2. Consulta
8.8.3. Actualización
8.9. Archivos de texto
8.10. Procesamiento de archivos directos (algoritmos)
8.10.1. Operaciones con archivos de acceso directo
8.10.1.1. Creación
8.10.1.2. Altas
8.10.1.3. Consulta
8.10.1.4. Bajas
8.10.1.5. Modificaciones
8.10.2. Clave-dirección
8.10.3. Tratamiento de las colisiones
8.10.4. Acceso a los archivos directos mediante indexación
8.10.4.1. Consulta
8.11. Procesamiento de archivos secuenciales indexados
Actividades de programación resueltas
Ejercicios
Capítulo 9. Ordenación, búsqueda e intercalación
9.1. Introducción
9.2. Ordenación
9.2.1. Método de intercambio o de burbuja
9.2.2. Ordenación por inserción
9.2.3. Ordenación por selección
9.2.4. Método de Shell
9.2.5. Método de ordenación rápida (quicksort)
9.3. Búsqueda
9.3.1. Búsqueda secuencial
9.3.2. Búsqueda binaria
9.3.3. Búsqueda mediante transformación de claves (hashing)
9.3.3.1. Métodos de transformación de claves
9.3.3.2. Colisiones
9.4. Intercalación
Actividades de programación resueltas
Ejercicios
Capítulo 10. Ordenación, búsqueda y fusión externa (archivos)
10.1. Introducción
10.2. Archivos ordenados
10.3. Fusión de archivos
10.4. Partición de archivos
10.4.1. Clasificación interna
10.4.2. Partición por contenido
10.4.3. Selección por sustitución
10.4.4. Partición por secuencias
10.5. Clasificación de archivos
10.5.1. Clasificación por mezcla directa
10.5.2. Clasificación por mezcla natural
10.5.3. Clasificación por mezcla de secuencias equilibradas
Actividades de programación resueltas
Ejercicios
Capítulo 11. Estructuras dinámicas lineales de datos (pilas, colas y listas enlazadas)
11.1. Introducción a las estructuras lineales de datos
11.1.1. Estructuras dinámicas de datos
11.2. Listas
11.3. Listas enlazadas
11.4. Procesamiento de listas enlazadas
11.4.1. Implementación de listas enlazadas con punteros
11.4.1.1. Creación de la lista
11.4.1.2. Inserción de un elemento
11.4.1.3. Eliminación de un elemento de una lista enlazada
11.4.1.4. Recorrido de una lista enlazada
11.4.1.5. Acceso a un elemento de una lista enlazada
11.4.2. Implementación de listas enlazadas con arrays
11.4.2.1. Creación de la lista
11.4.2.2. Inserción de un elemento
11.4.2.3. Eliminación de un elemento
11.4.2.4. Recorrido de una lista
11.4.2.5. Búsqueda de un determinado elemento en una lista
11.4.2.6. Funciones
11.5. Listas circulares
11.6. Listas doblemente enlazadas
11.6.1. Inserción
11.6.2. Eliminación
11.7. Pilas
11.7.1. Aplicaciones de las pilas
11.8. Colas
11.8.1. Representación de las colas
11.8.2. Aprovechamiento de la memoria
11.9. Doble cola
Actividades de programación resueltas
Ejercicios
Capítulo 12. Estructura de datos no lineales (árboles y grafos)
12.1. Introducción
12.2. Árboles
12.2.1. Terminología y representación de un árbol general
12.3. Árbol binario
12.3.1. Terminología de los árboles binarios
12.3.2. Árboles binarios completos
12.3.3. Conversión de un árbol general en árbol binario
12.3.4. Representación de los árboles binarios
12.3.4.1. Representación por punteros
12.3.4.2. Representación por listas enlazadas
12.3.4.3. Representación por arrays
12.3.5. Recorrido de un árbol binario
12.4. Arbol binario de búsqueda
12.4.1. Búsqueda de un elemento
12.4.2. Insertar un elemento
12.4.3. Eliminación de un elemento
12.4.4. Árbol binario mediante arrays
12.5. Grafos
12.5.1. Terminología de grafos
12.5.2. Representación de grafos
12.5.2.1. Matriz de adyacencia
12.5.2.2. Lista de adyacencia
Actividades de programación resueltas
Ejercicios
Capítulo 13. Diseño efectivo de programas y aplicaciones algorítmicas
13.1. Estilo de programación
13.1.1. Nombres de variables
13.1.2. Comentarios
13.2. Estructura del programa
13.3. Estructura modular y diseño descendente
13.3.1. Programación modular
13.4. Diseño de programas
13.4.1. Codificación
13.4.2. Ejecución de programas
13.4.3. Puesta a punto de programas
13.4.4. Manipulación de entrada/salida
13.4.5. Escritura de programas: la documentación
13.4.6. Documentación interna
13.4.7. Documentación externa
13.5. Aplicaciones de gestión (análisis)
13.5.1. Análisis de oportunidad
13.5.2. Análisis funcional
13.5.3. Análisis orgánico
13.5.4. Explotación
Ejercicios
Capítulo 14. Tablas de decisión
14.1. Introducción a las tablas de decisión
14.2. Definición de una Tabla de Decisión (TD)
14.2.1. Reglas de decisión
14.2.2. Modos de representación de las tablas de decisión
14.3. Tipos de tablas de decisión
14.3.1. Tablas de decisión limitadas
14.3.2. Tablas de decisión de entradas ampliadas o extendidas
14.3.3. Tablas de decisión mixtas
14.3.4. Comparación y transformación de los tipos de tablas
14.4. Tipos de reglas de decisión
14.4.1. Conversión de reglas O y SI_NO
14.5. Construcción de tablas de decisión
14.5.1. Estudio de condiciones, acciones y relaciones
14.5.2. Análisis y requisitos de una TD
14.5.3. Simplificación de una tabla de decisión
14.6. Encadenamiento de tablas de decisión
14.6.1. Tablas abiertas
14.6.2. Tablas cerradas
14.7. Conversión de tablas de decisión en programas
14.7.1. Programación directa en lenguajes de alto nivel
14.7.2. Transformación de la tabla en diagrama de flujo
Actividades de programación resueltas
Ejercicios
Apéndice A. Especificaciones del lenguaje algorítmico UPSAM
Apéndice B. Guía del usuario ISO/ANSI Pascal estándar
Apéndice C. Guía de sintaxis Turbo/Borland Pascal 7.0
Apéndice D. Guía de referencia lenguaje C ANSI
Apéndice E. Guía de sintaxis del lenguaje C++ (estándar C++ ANSI)
Apéndice F. Codificación de algoritmos en lenguajes de programación
Apéndice G. Glosario de programación
Apéndice H. Códigos ASCII
Bibliografía
Indice

No hay comentarios en este titulo.

para colocar un comentario.

Haga clic en una imagen para verla en el visor de imágenes

Imagen de cubierta local