La presente obra representa una herramienta de estudio para el diseño de algoritmos y su traducción a lenguaje C. Explica las técnicas básicas para el diseño de algoritmos que todo programador debe seleccionar y adoptar en un momento de su trayectoria, ya sea en el ámbito escolar o profesional. Este libro no está limitado a su lectura por estudiantes de informática o computación, ya que es aplicable a cualquier profesión donde sus planes de estudio contemplen la asignatura de programación.
Destaca por
- Su diseño, que contempla conceptos universales
- Estar escrito de lo más simple a lo más complejo.
- Incluir técnicas de programación estructurada para el diseño de algoritmos.
Conozca
- Las instrucciones en Lenguaje C.
- Los temas de arreglos unidimensionales y bidimensionales.
- El concepto de archivos y su implementación en lenguaje C.
Aprenda
- Técnicas auxiliares como la identación, modularidad y segmentación.
- El diseño Top Down.
- A elaborar diagramas de flujo (como complemento de documentación de los algoritmos más que como herramienta de diseño)
Realice
- La traducción de un algoritmo.
- Diseñar sus propias librerías o bibliotecas, con la finalidad de construir sus propias herramientas para programar y dar paso a la segmentación de aplicaciones.
Contenido
Introducción
Capítulo 1
Algoritmos y programas 1
1.1 Importancia de la programación …….. 1
1.2 Definición de conceptos …………………. 4
1.3 Tipos de programas ……………………….. 9
1.4 Planteamiento de problemas …………. 12
1.5 Modelo de solución
(Entrada-Proceso-Salida……………………….. 15
1.6 Representación de algoritmos con
técnicas de programación estructurada … 17
1.7 Tipos de datos primitivos………………… 26
1.8 Manejo de variables……………………….. 29
1.9 Conversión de expresiones algebraicas
en algorítmicas, operadores aritméticos y
su prioridad…………………………………………. 30
1.10 Método de cascada ……………………… 36
Capítulo 2
Estructuras de control 39
2.1 Estructuras de control…………………….. 39
2.1.1 Secuenciación ………………………. 40
2.1.2 Selección (simple, doble y
múltiple), uso de operadores de
relación y lógicos …………………………… 42
2.1.3 Repetición condicional (para,
mientras, hacer?mientras), uso de
banderas, contadores y
acumuladores ……………………………….. 48
2.2 Diseñe algoritmos de solución que
resuelvan problemas específicos
probando su validez a través de
pruebas de escritorio …………………………… 53
Ejercicios…………………………………………….. 89
Capítulo 3
Implementación de los algoritmos 91
3.1 Entorno del lenguaje de
programación C…………………………………… 91
3.1.1 Características generales. Palabras
reservadas, identificadores válidos y
discriminación de minúsculas y
mayúsculas …………………………………… 92
3.1.2 Estructura general del programa:
librerías, función principal y uso de
comentarios ………………………………….. 94
3.1.3 Ambiente de desarrollo …………. 97
3.1.4 Edición, compilación, enlazado
y corrida de un programa ……………….. 99
3.2 Definición de tipo de datos …………….. 101
3.3 Enunciados de Entrada/Salida……….. 104
3.4 Control de flujo del programa y
alineación de código ……………………………. 105
3.5 Codificación de los algoritmos en
lenguaje C y validación de su ejecución
empleando pruebas con
datos relevantes………………………………….. 115
Ejercicios…………………………………………….. 183
DISEÑO DE ALGORITMOS Y SU PROGRAMACIÓN EN C / ALEJANDRA M. MÉNDEZ GIRÓN Alfaomega
XII | Contenido __________________________________________________
Capítulo 4
Programación modular 185
4.1 Concepto de modularidad ………………. 185
4.1.1 Diseño descendente
(Top Down) ……………………………………. 191
4.2 Diseño de algoritmos utilizando
modularidad y probando su validez. Uso de
parámetros return y void………………………. 194
4.3 Codificación en lenguaje C de los
algoritmos y validación de su ejecución … 204
4.4 Creación y manejo de
librerías propias …………………………………… 224
Capítulo 5
Tipos compuestos de datos 237
5.1 Manejo de arreglos ………………………… 237
5.1.1 Unidimensionales ………………….. 238
5.1.2 Bidimensionales ……………………. 240
5.2 Cadenas de caracteres.
Código ASCII y Unicode ………………………… 242
5.3 Uso de registros……………………………… 254
5.4 Implementación de archivos
tipo texto y binarios ……………………………… 257
5.5 Tipo de dato apuntador ………………….. 270
5.5.1 Campo de aplicación ……………… 272
5.5.2 Variables por valor y
por referencia ………………………………… 274
5.5.3 Implementación en el lenguaje de
programación ………………………………… 275
5.6 Desarrollo de programas finales……… 277
Bibliografía 279
Índice Analítico 281