Buenas tardes,
Comparto mi solución al ejercicio propuesto:
package com.camilodev.ejercicios.condicionales;
import java.util.List;
import java.util.Scanner;
public class AccesoYNivelDePermiso {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
final int CODIGO_DE_ACCESO = 2023;
// final int[] NIVELES_DE_PERMISO = {1, 2, 3};
final List<Integer> NIVELES_DE_PERMISO = List.of(1, 2, 3); // lista inmutable
boolean permiso = false;
System.out.println("Ingrese el código de acceso:");
int codigoAcceso = input.nextInt();
System.out.println("Ingrese el nivel de permiso:");
int nivelPermiso = input.nextInt();
for(int nivel : NIVELES_DE_PERMISO){
if(nivel == nivelPermiso){
permiso = true;
break;
}
}
if(codigoAcceso == CODIGO_DE_ACCESO && permiso){
System.out.println("Acceso permitido. ¡Bienvenido al sistema!");
}else {
if(codigoAcceso != CODIGO_DE_ACCESO && !permiso){
System.out.println("Código incorrecto y nivel de permiso inválido");
}else if(codigoAcceso != CODIGO_DE_ACCESO){
System.out.println("Código de acceso incorrecto");
}else {
System.out.println("Nivel de permiso invalido");
}
}
}
}
Cualquier sugerencia es bienvenida.
Gracias por su atención.