4.4 Estructuras de control 

115

El trabajo de Bohm y Jacopini demostró que todos los programas podían escribirse en términos de tres 

estructuras de control solamente: la 

estructura de secuencia

, la 

estructura de selección

 y la 

estructura de 

repetición

. El término “estructuras de control” proviene del campo de las ciencias computacionales. Cuando 

presentemos las implementaciones de las estructuras de control en Java, nos referiremos a ellas en la terminología 
de la 

Especifi cación del lenguaje Java como “instrucciones de control”.

Estructura de secuencia en Java

La estructura de secuencia está integrada en Java. A menos que se le indique lo contrario, la computadora ejecuta 
las instrucciones en Java una después de otra, en el orden en que estén escritas; es decir, en secuencia. El 

diagrama

de actividad

 de la fi gura 4.1 ilustra una estructura de secuencia típica, en la que se realizan dos cálculos en orden. 

Java permite tantas acciones como deseemos en una estructura de secuencia. Como veremos pronto, en donde 
quiera que se coloque una sola acción, podrán colocarse varias acciones en secuencia.
 

Los diagramas de actividad son parte de UML. Un diagrama de actividad modela el 

fl ujo de trabajo

 (tam-

bién conocido como la 

actividad

) de una parte de un sistema de software. Dichos fl ujos de trabajo pueden incluir 

una porción de un algoritmo, como la estructura de secuencia de la fi gura 4.1. Los diagramas de actividad están 
compuestos por símbolos de propósito especial, como los 

símbolos de estado de acción

 (rectángulos cuyos lados 

izquierdo y derecho se reemplazan con arcos hacia fuera), 

rombos

 (

diamantes

) y 

pequeños círculos

. Estos sím-

bolos se conectan mediante 

fl echas de transición

, que representan el fl ujo de la actividad; es decir, el orden en el 

que deben ocurrir las acciones.
 

Al igual que el seudocódigo, los diagramas de actividad ayudan a los programadores a desarrollar y represen-

tar algoritmos; sin embargo, muchos de ellos aún prefi eren el seudocódigo. Los diagramas de actividad muestran 
claramente cómo operan las estructuras de control.
 

Considere el diagrama de actividad para la estructura de secuencia de la fi gura 4.1. Este diagrama contiene 

dos

estados de acción

 que representan las acciones a realizar. Cada estado de acción contiene una 

expresión de 

acción

 (por ejemplo, “sumar califi cación a total” o “sumar 1 al contador”), que especifi ca una acción particular 

a realizar. Otras acciones podrían incluir cálculos u operaciones de entrada/salida. Las fl echas en el diagrama de 
actividad representan 

transiciones

, las cuales indican el orden en el que ocurren las acciones representadas por los 

estados de acción. El programa que implementa las actividades ilustradas por el diagrama de la fi gura 4.1 primero 
suma

calificacion

 a 

total

, y después suma 

1

 a 

contador

.

 El 

círculo relleno

 que se encuentra en la parte superior del diagrama de actividad representa el 

estado inicial

de la actividad: el inicio del fl ujo de trabajo antes de que el programa realice las actividades modeladas. El 

círculo 

sólido rodeado por una circunferencia

que aparece en la parte inferior del diagrama representa el 

estado fi nal

;

es decir, el fi nal del fl ujo de trabajo después de que el programa realiza sus acciones.
 La 

fi gura 4.1 también incluye rectángulos que tienen la esquina superior derecha doblada. En UML, a estos 

rectángulos se les llama 

notas

(como los comentarios en Java): comentarios con explicaciones que describen el 

propósito de los símbolos en el diagrama. La fi gura 4.1 utiliza las notas de UML para mostrar el código en Java 
asociado con cada uno de los estados de acción en el diagrama de actividad. Una 

línea punteada

 conecta cada 

nota con el elemento que ésta describe. Los diagramas de actividad generalmente no muestran el código en 
Java que implementa la actividad. En este libro utilizamos las notas con este propósito, para mostrar cómo se rela-

sumar 1 al contador

sumar calificación al total

Instrucción en Java correspondiente:

total = total + calificacion;

Instrucción en Java correspondiente:

contador = contador + 1;

Figura 4.1

  |  Diagrama de actividad de una estructura de secuencia.

04_MAQ_CAP_04.indd115

4/19/081:20:35AM