A continuación se muestra una actualización de la clase SaludoApp6.java presentado
en el post anterior Control de flujo: do while (5/6). Se ha creado la clase SaludoApp7.java la
cual aplica la sentencia de control do while con dos decisiones.
Similar al ejemplo anterior, el programa le permite al
usuario ingresar a alguna opción del menú cuantas veces quiera hasta que el
usuario seleccione la opción 4 que es salir. Pero, a diferencia del ejemplo anterior,
el usuario no podrá equivocarse en más de tres veces al ingresar una opción del
menú.
package sistemajava;
import java.util.Scanner;
public class SaludoApp7 {
public static void main(String[] args) {
System.out.println("¡Hola Mundo...! Bienvenidos a www.sistemajava.com \n");
System.out.println("\t TEMAS QUE PUEDES APRENDER");
System.out.println("\t =========================");
System.out.println("\t 1. Fundamentos de programación (nivel básico)");
System.out.println("\t 2. Técnicas de programación orientada a objetos (nivel intermedio)");
System.out.println("\t 3. Desarrollo de aplicaciones empresariales (nivel avanzado)");
System.out.println("\t =========================");
System.out.println("\t 4. Salir");
Scanner entrada = new Scanner(System.in);
int opcion, numero_errores = 0;
do{
System.out.print("Ingrese el número de opción del menú: ");
opcion = entrada.nextInt();
switch(opcion){
case 1:
System.out.println("Aprenderás los siguientes temas:");
System.out.println("\t 1.1 Tipos de datos");
System.out.println("\t 1.2 Control de flujo");
System.out.println("\t 1.3 Arreglos, etc.");
break;
case 2:
System.out.println("Aprenderás los siguientes temas:");
System.out.println("\t 2.1 Clases y relaciones");
System.out.println("\t 2.2 Tecnología Swing");
System.out.println("\t 2.3 Aplicar principios de diseño, etc.");
break;
case 3:
System.out.println("Aprenderás los siguientes temas:");
System.out.println("\t 3.1 Implementación de patrones de diseño");
System.out.println("\t 3.2 Tecnología Web: JSP, Servlets, JSF, Servicios Web");
System.out.println("\t 3.3 Frameworks, etc.");
break;
case 4:
break;
default:
numero_errores++;
System.out.println("No ingresaste una opción del menú");
}
System.out.println(); // salto de línea
}while(opcion != 4 && numero_errores < 3);
System.out.println("Gracias por su visita.");
}
}
En el programa se puede
apreciar que la condición de la sentencia while
incluye un operador condicional && que permite evaluar dos
decisiones. La primera decisión es (opcion != 4) y la segunda decisión es (numero_errores
< 3). Sólo si las dos decisiones son verdad el bucle continúa en una
iteración más, pero si al menos una decisión es falta entonces se termina el
bucle. La variable numero_errores se ha ido acumulando dentro del bucle con la
instrucción numero_errores++. El operador ++ permite incrementar en uno el
valor de la variable.
Por último, el resultado de la ejecución del programa se muestra en la siguiente figura:
Gracias por visitar este blog.

bien explicado
ResponderEliminar