3. Acciones Estructuradas Por estructurar se entiende secuenciar

Anuncio
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA
DEPARTAMENTO DE ELECTRONICA
Programación en Pascal
Capítulo 3. Acciones Estructuradas.
3. Acciones Estructuradas
Por estructurar se entiende secuenciar las acciones primitivas sobre los datos; es decir:
lectura, asignación y escritura, en tres formas o bloques básicos. Los bloques deben tener
sólo una entrada y una salida.
Los tres bloques básicos son: Concatenación, Alternativa e Iteración.
La idea para estructurar las acciones de esta forma la introduce Dijkstra en 1965;
asegurando que un programador que aplique estas técnicas podrá aumentar en 10 veces su
productividad.
Por otro lado Bohm y Jacopini, en Italia y también en 1965, demuestran, empleando teoría
de grafos, que cualquier diagrama de flujo puede representarse empleando los tres bloques
básicos.
Se dice que un lenguaje de programación es estructurado si posee instrucciones que reflejen
en una instrucción, es decir en una línea de código, cada bloque básico.
3.1. Concatenación. Proceso Secuencial.
Se describe el diagrama de flujo, la instrucción y un diagrama de flujo estructurado.
Acción 1
Acción 1
begin acción1; acción2
Acción 2
Acción 2
Esta acción ha sido descrita en 2.4.a.
Prof. Leopoldo Silva Bijit.
07-07-2003
10
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA
DEPARTAMENTO DE ELECTRONICA
Programación en Pascal
Capítulo 3. Acciones Estructuradas.
3.2. Alternativa.
V
F
C
if C then A1 else A2
A1
A1
A2
En castellano se lee:
C
V
F
A2
Si condición entonces A1 sino A2.
Se interpreta:
♦ Se realiza la evaluación de la condición o expresión lógica C;
♦ si el resultado es verdadero se efectúa la acción A1;
♦ si el resultado es falso se efectúa la acción A2.
3.3. Iteración.
V
C
F
while condición do acción
C
A
En castellano se lee :
A
Mientras condición haga acción.
Se interpreta:
♦ Se evalúa la condición C, si es verdadera se efectúa la acción A.
♦ Luego de realizada la acción se vuelve a evaluar la condición. Es decir, mientras la
condición tenga valor verdadero se efectuará la acción.
♦ Si la condición toma valor falso, se termina la iteración.
Prof. Leopoldo Silva Bijit.
07-07-2003
11
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA
DEPARTAMENTO DE ELECTRONICA
Programación en Pascal
Capítulo 3. Acciones Estructuradas.
La codificación correcta de esta estructura requiere que la acción se repita el número
deseado de veces, y que la iteración termine. Para esto la acción iterativa debe modificar las
variables que entran en la fórmula de la condición.
El razonamiento inductivo facilita la codificación de los detalles de esta instrucción. Después
de haberla usado muchas veces, el programador se familiariza con la estructura y ésta le será
fácil de verificar.
3.4. Diagramas de flujo estructurado.
Los bloques ubicados a la derecha de la definición de las acciones estructuradas básicas
fueron introducidos por Nassi y Schneiderman en 1973. Los que reflejan que es posible ir
concatenando los bloques hasta llegar, por transformaciones a uno solo; que, en forma
abstracta, representa como una sola acción el algoritmo.
Cada bloque rectangular que representa una acción, se puede reemplazar por uno de los
tres bloques básicos. Esto permite aplicar en forma sistemática una de las reglas
fundamentales de la programación, que es: "Dividir para Vencer".
Cada acción puede dividirse sólo en uno de los tres modos básicos.
3.5. Desarrollo jerárquico de programas. Diseño Top-Down.
Top-Down significa de arriba hacia abajo, y simboliza que el método de diseño va de lo
general a lo particular. De la esencia al detalle.
La técnica consiste en describir, con palabras lo más simples posibles, la acción a
desarrollar. Si estas palabras no existen en el lenguaje de programación que se está
empleando, deberá subdividirse la acción por una secuencia más simple.
En cada subdivisión van espontáneamente apareciendo necesidades de variables. Cada
subdivisión debe efectuarse mediante el empleo de un bloque básico.
El proceso de división debe llegar hasta que la acción pueda explicarse en términos de las
instrucciones primitivas del lenguaje que se esté empleando.
Prof. Leopoldo Silva Bijit.
07-07-2003
12
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA
DEPARTAMENTO DE ELECTRONICA
Programación en Pascal
Capítulo 3. Acciones Estructuradas.
De esta forma el proceso de diseño puede observarse en varios niveles de detalle. Lo cual
está asociado a los niveles de comprensión que se tiene en una pirámide administrativa; de
aquí viene el nombre de diseño jerárquico. Esta visión facilita el trabajo de equipo, ya que la
acción puede ser convenientemente coordinada en diferentes niveles de detalle.
Por otro lado, si se van definiendo gradualmente las variables y acciones a medida que se
desciende en el nivel de detalle, es posible aplicar lo que se ha denominado programación por
refinaciones sucesivas.
3.6. Otras estructuras de control.
Para aumentar la flexibilidad de la programación, se introducen instrucciones de control que
son un complemento de los tres bloques básicos. Como se verá, cada una de estas nuevas
estructuras podrá implementarse en términos de las básicas: Concatenación, Alternativa e
Iteración.
a) Condicional:
V
C
F
C
if C then A
A
V
A
Se interpreta:
♦ Si la condición toma valor verdadero se efectúa la acción A;
♦ Si la condición tiene valor falso, se efectúa la instrucción siguiente.
Prof. Leopoldo Silva Bijit.
07-07-2003
13
UNIVERSIDAD TECNICA FEDERICO SANTA MARIA
DEPARTAMENTO DE ELECTRONICA
Programación en Pascal
Capítulo 3. Acciones Estructuradas.
b) Repetición.
A
A
repeat A until C
V
C
C
F
En castellano se lee: Repita A hasta C
Se interpreta:
♦ Se efectúa la acción, luego se evalúa la condición.
♦ Si la condición toma valor verdadero, termina la repetición.
♦ Si la condición toma valor falso se vuelve a realizar la acción. Es decir se repite la acción
hasta que la condición sea verdadera.
Existen dos cláusulas de control adicionales que se verán más adelante. Una es la selección
de una acción entre muchas (case of); la otra es la repetición de una acción un número
conocido de veces o lazo ( do loop en inglés. O construcción for).
Prof. Leopoldo Silva Bijit.
07-07-2003
14
Descargar