Estructuras de Control
Estructuras de Control
Estructuras de control
89
Estructuras de control
Estructuras de selección
Las estructuras de selección permiten modificar el flujo de un programa. La
decisión de ejecutar un bloque de sentencias queda condicionada por el
valor de una expresión lógica definida utilizando variables del programa.
Estructura if
if (condicion) {
bloque-de-sentencias
}
if (condicion)
sentencia;
90
Fundamentos de programación en Java
if (calificacion == 10) {
System.out.println("Matrícula de Honor");
}
Estructura if else
if (condicion) {
bloque-de-sentencias-if
}
else {
bloque-de-sentencias-else
}
91
Estructuras de control
La sentencia if-else:
if (numero % 2 == 0)
System.out.println("El número es par");
else
System.out.println("El número es impar");
if (numero % 2 != 0)
System.out.println("El número es impar");
else
System.out.println("El número es par");
Calificación Descripción
10 Matrícula de Honor
9 Sobresaliente
7, 8 Notable
6 Bien
5 Aprobado
0,1,2,3,4 Suspenso
92
Fundamentos de programación en Java
De la tabla anterior, se puede ver que las condiciones son excluyentes entre
sí. Si la calificación es 10 se muestra “Matrícula de Honor”. En caso
contrario la calificación es menor de 10 y es necesario seleccionar entre
“Sobresaliente”, “Notable”, “Bien”, “Aprobado” y “Suspenso”. Si la
calificación es 9 se muestra “Sobresaliente”. En caso contrario, la
calificación es menor de 9 y se debe seleccionar entre “Notable”, “Bien”,
“Aprobado” y “Suspenso”. Si la calificación es mayor o igual a 7 se muestra
“Notable”. En caso contrario la calificación es menor de 7 y se debe
seleccionar entre “Bien”, “Aprobado” y “Suspenso”. Si la calificación es 6 se
muestra “Bien”. En caso contrario la calificación es menor o igual a 6 y se
debe seleccionar entre “Aprobado” y “Suspenso”. Si la calificación es 5 se
muestra “Aprobado”, en caso contrario “Suspenso”.
La sentencia if-else:
int calificacion = 7;
if (calificacion == 10)
System.out.println("Matrícula de Honor");
else
if (calificacion == 9)
System.out.println("Sobresaliente");
else
if (calificacion >= 7)
System.out.println("Notable");
else
if (calificacion == 6)
System.out.println("Bien");
else
if (calificacion == 5)
System.out.println("Aprobado");
else
System.out.println("Suspenso");
93
Estructuras de control
Estructura if else if
if (condicion-1) {
bloque-de-sentencias-condicion-1
} else if (condicion-2) {
bloque-de-sentencias-condicion-2
} else {
bloque-de-sentencias-else
}
int calificacion = 7;
if (calificacion == 10) {
System.out.println("Matrícula de Honor");
} else if (calificacion == 9) {
System.out.println("Sobresaliente");
} else if (calificacion >= 7) {
System.out.println("Notable");
} else if (calificacion == 6) {
System.out.println("Bien");
} else if (calificacion == 5) {
System.out.println("Aprobado");
} else {
System.out.println("Suspenso");
}
94
Fundamentos de programación en Java
Estructura switch
switch (expresion) {
case valor-1:
bloque-de-sentencias-1;
break;
case valor-2:
bloque-de-sentencias-2;
break;
case valor-3:
bloque-de-sentencias-3;
break;
case valor-4:
bloque-de-sentencias-4;
break;
case valor-5:
bloque-de-sentencias-5;
break;
default:
bloque-de-sentencias-default;
break;
}
95
Estructuras de control
Calificación Descripción
96
Fundamentos de programación en Java
switch (categoriaProfesional) {
case 'A': System.out.print("Socio ");
case 'B': System.out.print("Senior ");
case 'C': System.out.print("Junior ");
default: System.out.print("¡Indefinida! ");
}
}
}
97
Estructuras de control
switch (categoriaProfesional) {
case 'A': System.out.print("Socio ");
break;
case 'B': System.out.print("Senior ");
break;
case 'C': System.out.print("Junior ");
break;
default: System.out.print("¡Indefinida! ");
break;
}
98
Fundamentos de programación en Java
switch (categoriaProfesional) {
case 'A': System.out.print("Socio ");
break;
case 'B': System.out.print("Senior ");
break;
case 'C': System.out.print("Junior ");
break;
default: System.out.print("¡Indefinida! ");
break;
}
}
}
99
Estructuras de control
100
Fundamentos de programación en Java
El operador condicional
101
Estructuras de control
Menor de edad
Estructuras de repetición
Las estructuras de repetición permiten repetir muchas veces un bloque de
sentencias. A estas estructuras también se les conoce como estructuras
iterativas o bucles.
102
Fundamentos de programación en Java
Estructura while
103
Estructuras de control
inicialización;
while (condición) {
bloque-de-sentencias;
actualizacion;
}
while (condición) {
bloque-de-sentencias;
}
104
Fundamentos de programación en Java
0! = 1
1! = 1
2! = 1 x 2
3! = 1 x 2 x 3
4! = 1 x 2 x 3 x 4
...
n!= 1 x 2 x 3 x 4 x 5 x ... x (n-2) x (n-1) x (n)
while (i <= n) {
factorial = factorial * i;
i++;
}
}
}
105
Estructuras de control
i n factorial * i factorial
1 5 1*1 1
2 5 1*2 2
3 5 2*3 6
4 5 6*4 24
5 5 24 * 5 120
106
Fundamentos de programación en Java
Estructura do-while
inicialización;
do {
bloque-de-sentencias;
actualizacion;
} while (condición);
107
Estructuras de control
do {
bloque-de-sentencias;
} while (condición);
do {
factorial = factorial * i;
i++;
} while (i <= n);
}
}
108
Fundamentos de programación en Java
Estructura for
109
Estructuras de control
}
}
110
Fundamentos de programación en Java
111
Estructuras de control
if (numero == 0)
System.out.println("El número es par");
else
System.out.println("El número es impar");
}
}
112
Fundamentos de programación en Java
do {
numero = (int) (100 * Math.random());
System.out.println("Número aleatorio: " + numero);
} while (numero != 50);
}
}
113
Estructuras de control
Ejemplo de uso de for. Utilice una estructura for para calcular la función
potencia de un número entero positivo utilizando productos. La potencia se
calcula como el producto de la base repetido tantas veces como el valor del
exponente.
}
}
114
Fundamentos de programación en Java
Estructuras de salto
En Java existen dos sentencias que permiten modificar el flujo secuencial de
un programa y provocan un salto en la ejecución. Estas sentencias son
break y continue. Ambas se utilizan con las estructuras de repetición
para interrumpir la ejecución con break o volver al principio con continue.
Además, el break se utiliza para interrumpir la ejecución de un switch.
Sentencia break
Sentencia continue
Utilice un for para comparar cada una de las letras de la frase. Dentro del
for utilice un switch para seleccionar entre vocales, consonantes y
espacios. Las variables vocales, consonantes y espacios se inicializan a cero
y se utilizan para contar el número de veces que aparecen en la frase.
115
Estructuras de control
switch (letra) {
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
case 'A':
case 'E':
case 'I':
case 'O':
case 'U': vocales++;
break;
case ' ': espacios++;
break;
default: consonantes++;
break;
}
}
}
}
116
Fundamentos de programación en Java
do {
numero = (int) (100 * Math.random());
System.out.println("Número aleatorio: " + numero);
if (numero == 25)
break;
}
}
117
Estructuras de control
}
}
118