Está en la página 1de 20

Unidad IV

Control de Flujo

Subtemas:
4.1 Estructuras secuenciales. 4.2 Estructuras selectivas: simple, doble y mltiple. 4.3 Estructuras iterativas: repetir mientras, hasta, desde 4.4 Diseo e implementacin de funciones

Competencia especfica a desarrollar:


Construir programas utilizando estructuras condicionales y repetitivas para aumentar su funcionalidad.

Criterios de evaluacin:
Examen Prcticas Tarea Asistencia Participacin 40 % 30 % 10 % 10 % 10 %

Sentencias
Podemos definir a una sentencia como la unidad ejecutable de un programa en Java.
Las sentencias controlan el flujo u orden de ejecucin. Entre las sentencias que podemos utilizar en Java se encuentran: * Sentencia IF * Sentencia SWITCH * Sentencia WHILE * Sentencia DO WHILE * Sentencia FOR

Sentencia IF
La sentencia if permite a un programa tomar una decisin para ejecutar una accin u otra, basndose en el resultado verdadero o falso de una expresin. La sintaxis para utilizar esta sentencia es la siguiente: If ( condicin ) sentencia 1; [ else sentencia 2 ]; Donde condicin es una expresin booleana, y sentencia 1 y sentencia 2 representan a una sentencia simple o compuesta. Cada sentencia simple debe finalizar con punto y coma.

Sentencia IF
Una sentencia if se ejecuta de la forma siguiente: 1. Se evala la condicin obtenindose un resultado verdadero o falso. 2. Si el resultado es verdadero (resultado true) se ejecutar lo indicado por la sentencia 1. 3. Si el resultado es falso (resultado false) la sentencia 1 se ignora y se ejecutar lo indicado por la sentencia 2, Ejemplo si la clusula else se 2: ha especificado. If (a != 0 ) 4. En cualquier caso, la ejecucin contina en la b siguiente = 4 + 2; sentencia ejecutable que haya a continuacin de la sentencia if.. else
b = 0; c = c +1;

Sentencia IF
Ejemplo 1: if (a != 0 ) b = 4 + 2; c = c + 1; Ejemplo 2: if (a != 0 && b !=0) x = i; Ejemplo 3:
Ejemplo if (a 2: == b) If (a != 0 ) { b = 4 + 2; x = 4; else b = 0; a=a+ c =} c +1;

x;

Anidamiento de la sentencia IF
if (condicin 1) { if (condicin 2) sentencia 1; } else

sentencia 2;
Al evaluar las condiciones anteriores, puede presentarse los casos que se indican a continuacin en la tabla siguiente;
Condicin 1 F F V Condicin 2 F V F Se ejecuta: sentencia 1 No No No Sentencia 2 Si Si No

Si

No

Anidamiento de la Sentencia IF
Ejemplo: if ( a == 0 ) { if ( b != 0 ) s = s + b; } else s = s + a; // Siguiente lnea del programa

Sentencia ELSE IF
Esta estructura es consecuencia de las sentencias if anidadas. Su formato general es: if ( condicin 1 ) sentencia 1; else if ( condicin 2 ) sentencia 2; else if ( condicin 3 ) sentencia 3; : : else sentencia n; La evaluacin de esta estructura sucede as: si se cumple la condicin 1, se ejecuta la sentencia 1 y si no se cumple se examinan secuencialmente las condiciones siguientes hasta el ltimo else, ejecutndose la sentencia correspondiente al primer else if, cuya condicin sea cierta. Si todas las condiciones son falsas, se ejecuta la sentencia n correspondiente al ltimo else.

Sentencia ELSE IF
Ejemplo: if (venta<= 1000) desc = (venta * 20) / 100; else if ( venta <= 2000) desc = (venta * 30) / 100; else if ( venta <= 3000) desc = (venta * 40) / 100; else desc = (venta * 50) / 100;

Sentencia SWITCH
La sentencia SWITCH permite ejecutar una de varias acciones, en funcin del valor de una expresin. Es una sentencia especial para decisiones mltiples. La sintaxis para utilizarla es la siguiente:

switch ( expresin )
{ case expresin-constante 1:

[ case expresin-constante 2:]


[ case expresin-constante 3:] [ sentencia 2;]

[ sentencia 1;]

Donde expresin es una expresin entera de tipo char, byte, short o int y expresin-constante es una constante tambin entera y de los mismos tipos. La sentencia switch evala la expresin entre parntesis y compara su valor con las constantes de cada case. Generalmente se utiliza break para transferir el control fuera del bloque de la sentencia switch.

:
:

[ sentencia 3;]

[ default:]

[ sentencia n;]

Sentencia SWITCH
Ejemplo: switch ( numero ) { case 1: System.out.println ( A); break; case 2: System.out.println ( B); break; case 3: System.out.println ( C); break; }

Sentencia WHILE
La sentencia while ejecuta una sentencia, simple o compuesta, cero o ms veces, dependiendo del valor de una expresin booleana. Su sintaxis es: while ( condicin ) sentencia;

Donde condicin es cualquier expresin booleana y sentencia es una sentencia simple o compuesta: La ejecucin de la sentencia while sucede as: 1. Se evala la expresin obtenindose un resultado verdadero o falso. 2. Si el resultado es falso ( resultado false ), la sentencia no se ejecuta y se pasa el control a la siguiente sentencia en el programa. 3. Si el resultado es verdadero ( resultado true ), se ejecuta la sentencia y el proceso descrito se repite desde el punto 1.

Sentencia WHILE
Ejemplo: contador = 0; while ( contador <11) { contador = contador + 1; System.out.println (contador); }

Sentencia DO WHILE
Ejecuta una sentencia, simple o compuesta, una o ms veces, dependiendo del valor de una expresin. Su sintaxis es la siguiente: do

while ( condicin ); Donde condicin es cualquier expresin booleana y sentencia es una sentencia simple o compuesta: La ejecucin de la sentencia do while sucede de la siguiente forma: 1. Se ejecuta el bloque (sentencia simple o compuesta) de do.

sentencia;

2. Se evala la expresin correspondiente a la condicin de finalizacin del bucle obtenindose un resultado verdadero o falso.

3. Si el resultado es falso (resultado false), se pasa el control a la siguiente sentencia del programa.

4. Si el resultado es verdadero ( resultado true), el proceso descrito se repite desde el punto 1.

Sentencia DO WHILE
Ejemplo: contador = 1; do { System.out.println (contador); contador = contador + 1; } while ( contador <11);

Sentencia FOR
Permite ejecutar una sentencia simple o compuesta, repetidamente un nmero de veces conocido. Su sintaxis es la siguiente: for ( [ v1 = e1 [ , v2 = e2] ] ; [ condicin ] ; [ progresin-condicin ] ) sentencia; Donde: * v1, v2, representan variables de control que sern iniciadas con los valores de las expresiones e1, e2, ; * Condicin es una expresin booleana que si se omite, se supone verdadera; * progresin-condicin es una o ms expresiones separadas por comas cuyos valores evolucionan en el sentido de que se cumpla la condicin para finalizar la ejecucin de la sentencia for. * Sentencia es una sentencia simple o compuesta.

Sentencia FOR
La ejecucin de la sentencia for sucede de la siguiente manera: 1. Se inician las variables v1, v2, 2. Se evala la condicin de finalizacin del bucle obtenindose un resultado verdadero o falso: a) Si el resultado es verdadero (resultado true), se ejecuta el bloque de sentencias, se evala la expresin que da lugar a la progresin de la condicin y se vuelve al punto 2. b) Si el resultado es falso (resultado false), la ejecucin de la sentencia for se da por finalizada y se pasa el control a la siguiente sentencia del programa. Ejemplo 1: int i; for (i = 1; i <=100; i++) System.out.println (i + ); Ejemplo 2: char letra; for (letra = z; letra>=a; letra--) System.out.println ( letra + );

También podría gustarte