Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

actividad final

comparto ultimo codigo resuelto

import java.util.Scanner;
public class E10sistema {
    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        int codigoAutorizado = 2023;
        int codigoIngresado = 0;
        int permiso = 0;
        System.out.println("Ingrese el código de acceso");
        codigoIngresado = teclado.nextInt();
        System.out.println("Ingrese el nivel de permiso:");
        permiso = teclado.nextInt();

        if (codigoIngresado == codigoAutorizado ){
            switch (permiso){
                case 1:
                    System.out.println("Acceso permitido. ¡Bienvenido al sistema!");
                    break;
                case 2:
                    System.out.println("Acceso permitido. ¡Bienvenido al sistema!");
                    break;

                    case 3:
                    System.out.println("Acceso permitido. ¡Bienvenido al sistema!");
                    break;
                default:
                    System.out.println("ACCESO RESTRINGIDO. NIVEL DE PERMISO INVALIDO");
                    break;
            }
        } else{
            System.out.println("ACCESO RESTRINGIDO. CONTRASEÑA INCORRECTA");
        }
    }
}
1 respuesta

Hola Ricardo, espero que estés bien

¡Gracias por compartir tu código! Parece que estás en el camino correcto para resolver el ejercicio. Tu programa verifica correctamente el código de acceso y el nivel de permiso, y muestra los mensajes adecuados. Sin embargo, hay un pequeño detalle que podrías mejorar.

Actualmente, tu programa maneja correctamente los casos en los que el código de acceso es correcto y el nivel de permiso está dentro de los valores válidos (1, 2 o 3). Sin embargo, si el código de acceso es incorrecto, el programa solo informa "ACCESO RESTRINGIDO. CONTRASEÑA INCORRECTA", sin verificar si el nivel de permiso también es incorrecto.

Para mejorar tu programa, podrías agregar una verificación adicional para manejar el caso en el que tanto el código de acceso como el nivel de permiso sean incorrectos. Aquí te dejo una sugerencia de cómo podrías hacerlo:

import java.util.Scanner;

public class E10sistema {
    public static void main(String[] args) {
        // código omitido

        if (codigoIngresado == codigoAutorizado) {
            if (permiso >= 1 && permiso <= 3) {
                System.out.println("Acceso permitido. ¡Bienvenido al sistema!");
            } else {
                System.out.println("ACCESO RESTRINGIDO. NIVEL DE PERMISO INVALIDO");
            }
        } else {
            if (permiso < 1 || permiso > 3) {
                System.out.println("ACCESO RESTRINGIDO. CONTRASEÑA INCORRECTA Y NIVEL DE PERMISO INVALIDO");
            } else {
                System.out.println("ACCESO RESTRINGIDO. CONTRASEÑA INCORRECTA");
            }
        }
    }
}

Con esta modificación, el programa también verifica si el nivel de permiso es incorrecto cuando el código de acceso no es válido, proporcionando mensajes más precisos según el caso.

Espero que esta sugerencia te sea útil y te ayude a mejorar tu solución. ¡Bons estudios!