1
resposta

[Projeto] Código de acesso [Resolvido]

Este código Java é um sistema de segurança simples. Ele pede ao usuário para digitar um código de acesso e um nível de permissão. O programa então verifica se o código digitado é 2023 e se o nível é 1, 2 ou 3. Se ambos estiverem corretos, o acesso é permitido. Caso contrário, o acesso é negado, e o programa informa o motivo, como "código incorreto" ou "nível de permissão inválido", ou até mesmo se você digitou algo que não era um número.

Código:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner leitor = new Scanner(System.in);

        int codigoDigitado;
        int nivelDigitado;


        try {
            System.out.print("Digite o código de acesso (o correto é 2023): ");
            codigoDigitado = leitor.nextInt();

            System.out.print("Digite o nível de permissão (1, 2 ou 3): ");
            nivelDigitado = leitor.nextInt();
        } catch (java.util.InputMismatchException erro) {
            System.out.println("Acesso Negado.");
            System.out.println("Motivo: Você digitou algo que não é um número. Por favor, use apenas números.");
            leitor.close();
            return;
        }


        int codigoCorreto = 2023;


        if (codigoDigitado == codigoCorreto) {

            if (nivelDigitado == 1 || nivelDigitado == 2 || nivelDigitado == 3) {

                System.out.println("Acesso Permitido. Bem-vindo ao sistema!");
            } else {

                System.out.println("Acesso Negado.");
                System.out.println("Motivo: Nível de permissão inválido.");
            }
        } else {

            System.out.println("Acesso Negado.");
            System.out.println("Motivo: Código de acesso incorreto.");
        }

        leitor.close();
    }


}
1 resposta

Oii, Fernanda!

Obrigada por compartilhar.

Gostei bastante da forma como organizou as verificações de código e nível de permissão. Seu tratamento de exceções com try e catch deixou o programa mais seguro para entradas inválidas.

Uma dica interessante para o futuro é usar nextLine para capturar strings, caso precise ler textos além de números.


import java.util.Scanner;

public class Saudacao {
    public static void main(String[] args) {
        Scanner leitor = new Scanner(System.in);
        System.out.print("Digite seu nome: ");
        String nome = leitor.nextLine();
        System.out.println("Olá, " + nome);
        leitor.close(); // Boa prática: fechar o Scanner
    }
}

Este código lê um texto digitado pelo usuário e mostra uma mensagem personalizada.

Conteúdos relacionados
Alura

Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!