Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PROGRAMACIÓN ESTRUCTURADA
Objetivo:
Conocer las técnicas de Programación Estructurada y aplicar la Lógica Estructurada al diseño
de programas correctos y eficaces.
Introducción
Hasta el momento hemos aprendido lo mínimo necesario para programar, en este caso en C.
Los conceptos y principios de flujogramación estudiados (Lógica), se aplican a cualquier otro
lenguaje de programación conociendo desde luego la sintáxis de éste.
I. PROGRAMACIÓN ESTRUCTURADA
La Programación Estructurada es una metodología que consiste en aplicar un conjunto de
técnicas que nos permiten programar de forma fácil, ordenada y eficaz.
Un algoritmo correcto es aquel que además de estar libre de errores, hace lo que se espera
que haga, es decir que al ejecutarlo se obtienen los datos de salida (o información) requeridos.
1
Un algoritmo estructurado, es aquel que en su diseño se han utilizado solamente las seis
estructuras lógicas de control: secuenciación, selección, selección múltiple, mientras, desde –
hasta y hasta que.
Una estructura lógica de control es una forma de control del flujo de ejecución del algoritmo,
esto quiere decir que ayudan a controlar el orden en que se ejecutan los pasos o instrucciones
del algoritmo. Las estructuras lógicas de control son seis y se dividen en Fundamentales o
principales y Derivadas o expandidas.
¾ Existen uno o más caminos o flujos desde el principio hasta el fin del algoritmo que se
pueden seguir.
¾ Todas las instrucciones o pasos del algoritmo son ejecutables y no existen lazos o ciclos
infinitos.
Los algoritmos diseñados mediante esta técnica resultan la mayoría de las veces, efectivos
desde la primera ejecución, corrida o prueba lógica. Para diseñarlos se utilizan las estructuras
lógicas de control permitidas exclusivamente, sin ninguna variación de las mismas.
Después de conocer los principios básicos de la Lógica Estructurada, nos damos cuenta que
los hemos estado utilizando sin saberlo, por lo tanto podemos asegurar que los algoritmos que
diseñamos son correctos, propios y desde luego estructurados.
Sin embargo, Lógica Estructurada normalizó el uso de seis estructuras de control, se llaman así
porque controlan el flujo o camino que se sigue al probar un algoritmo. Las tres primeras u
originales y tres más que se derivan de estas. A continuación se presenta un resumen de cada
una de las estructuras para poder identificarlas:
2
Estructuras Lógicas de control Estructuras Lógicas de control
FUNDAMENTALES DERIVADAS
3
La técnica conocida como Lógica Estructurada, promueve la simplicidad; de hecho, ya
mencionamos que los precursores de ésta, demostraron que solo son necesarias tres
estructuras para diseñar cualquier algoritmo: secuenciación, selección y repetición.
Si
!Condición
Acción 2
Selector
Si
==v1
Selector
Acción 1
V1
Acción 1
Selector
Si
V2 ==v2
Acción 2
Acción 2
V3
Acción 3
Selector
Si
==v3
Acción 3
4
¾ La repetición, se implementa de una de las siguientes formas: mientras (while), desde –
hasta (for) y hasta que (sin codificación en C); pero, con la estructura mientras es
suficiente y demostrarlo es fácil, con la conversión de estructuras repetitivas que vimos en
la Unidad anterior, nos damos cuenta que tanto la estructura desde hasta, como la
estructura Hasta que se pueden sustituir por una estructura mientras
var=var+vc
Si Acción
2. Utilizar variables que aún no han sido leídas o no se les ha asignado valor alguno
(Error de ejecución).
5
5. Utilizar comas en lugar de puntos y comas en una sentencia for (error de sintaxis).
6. Colocar un punto y coma (;) al final de una sentencia for (después del paréntesis de
cierre); ya que convierte el cuerpo del ciclo en una instrucción vacía (error de lógica).
8. Olvidar una sentencia break cuando ha terminado un caso, en una sentencia switch,
(Error de lógica).
9. Diseñar un ciclo while infinito, cuando la condición nunca se vuelve falsa. En ciclo
controlado por contador, asegurarse que dentro del cuerpo del ciclo se le cambie el
valor al contador (incremento o decremento). Si el ciclo es controlado por un centinela
o bandera, asegurarse de que el centinela sea leído dentro del cuerpo del ciclo (Error
de lógica).
2. Tener demasiados niveles de anidamiento puede provocar que un programa sea difícil
de entender. Como regla general, intentar utilizar como máximo sólo tres niveles de
anidamiento.
3. Proporcionar un caso default, ya que los casos no evaluados explícitamente dentro del
switch se ignoran, el caso default ayuda a evitar eso.
4. Las sentencias del caso de excepción, default se deben colocar como último caso.
5. Cuando una comparación de igualdad (o condición de igualdad) tiene una variable y una
constante como: x == 3, se recomienda escribir la constante del lado derecho del
operador y la variable del lado izquierdo.