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