Page 52 - Chapra y Canale. Metodos Numericos para Ingenieros 5edición_Neat
P. 52

28                      PROGRAMACIÓN Y SOFTWARE

                               2.2    PROGRAMACIÓN ESTRUCTURADA


                                      En los comienzos de la computación, los programadores no daban mucha importancia
                                      a que sus programas fueran claros y fáciles de entender. Sin embargo, hoy se reconoce
                                      que escribir programas organizados y bien estructurados tiene muchas ventajas. Además
                                      de las ventajas obvias de tener un software más accesible para compartirlo, también
                                      ayuda a generar programas mucho más eficientes. Es decir, algoritmos bien estructura-
                                      dos, que son invariablemente mucho más fáciles de depurar y de probar, lo que resulta
                                      en programas que toman menos tiempo desarrollar, probar y actualizar.
                                         Los científicos de la computación han estudiado sistemáticamente los factores y los
                                      procedimientos necesarios para desarrollar software de alta calidad de este tipo. En
                                      esencia la programación estructurada es un conjunto de reglas que desarrollan en el
                                      programador los hábitos para lograr un buen estilo. Aunque la programación estructu-
                                      rada es bastante flexible para permitir considerable creatividad y expresión personal, sus
                                      reglas imponen suficientes restricciones para hacer que los programas resultantes sean
                                      muy superiores a sus versiones no estructuradas. En particular, el producto terminado
                                      es mucho más elegante y fácil de entender.
                                         La idea clave detrás de la programación estructurada es que cualquier algoritmo
                                      numérico requiere tan sólo de tres estructuras de control fundamentales: secuencia, se-
                                      lección y repetición. Limitándonos a dichas estructuras el programa resultante será claro
                                      y fácil de seguir.
                                         En los párrafos siguientes describiremos cada una de estas estructuras. Para man-
                                      tener esta descripción de una manera general usaremos diagramas de flujo y seudocó-
                                      digo. Un diagrama de flujo es una representación visual o gráfica de un algoritmo. Un
                                      diagrama de flujo emplea una serie de cajas o bloques y flechas, cada una de las cuales
                                      representa un determinado paso u operación del algoritmo (figura 2.1). Las flechas re-
                                      presentan el orden en el que se realizarán las operaciones.
                                         No todas las personas relacionadas con la computación están de acuerdo en que los
                                      diagramas de flujo sean una buena opción. Incluso, algunos programadores experimen-
                                      tados no usan los diagramas de flujo. Sin embargo, nosotros pensamos que existen tres
                                      buenas razones para estudiarlos. La primera es que sirven para expresar y comunicar
                                      algoritmos. La segunda es que aunque no se empleen de manera rutinaria, algunas veces
                                      resultarán útiles para planear, aclarar o comunicar la lógica del propio programa o del
                                      de otra persona. Por último, que es lo más importante para nuestros objetivos, son exce-
                                      lentes herramientas didácticas. Desde el punto de vista de la enseñanza, son los medios
                                      ideales para visualizar algunas de las estructuras de control fundamentales que se em-
                                      plean en la programación.
                                         Otra manera de expresar algoritmos, y que constituye un puente de unión entre los
                                      diagramas de flujo y el código de la computadora, es el seudocódigo. En esta técnica se
                                      utilizan expresiones semejantes a las del código, en lugar de los símbolos gráficos del
                                      diagrama de flujo. En esta obra, para el seudocódigo hemos adoptado algunas conven-
                                      ciones de estilo. Escribiremos con mayúsculas las palabras clave como IF, DO, INPUT,
                                      etc., mientras que las condiciones, pasos del proceso y tareas irán en minúsculas. Además,
                                      los pasos del proceso se escribirán en forma indentada. De esta manera las palabras
                                      clave forman un “sandwich” alrededor de los pasos para definir visualmente lo que
                                      abarca cada estructura de control.




                                                                                                         6/12/06   13:43:40
          Chapra-02.indd   28
          Chapra-02.indd   28                                                                            6/12/06   13:43:40
   47   48   49   50   51   52   53   54   55   56   57