1
resposta

Monitorando tentativas de login

package forewhile;

import java.util.Scanner;

public class Senha {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Digite sua senha: ");
        String senha = sc.nextLine();

        if (senha.equals("1234")) {
            System.out.println("Senha Correta! Acesso concedido!");
        }else {
            for (int i = 2; i >= 1 ; i--) {
                System.out.println("senha incorreta!" + i + "Tentativas");
                System.out.println("Digite sua senha: ");
                senha = sc.nextLine();
                if(senha.equals("1234")){
                    System.out.println("Senha Correta! Acesso concedido!");
                }else{
                    if (i <= 1) {
                        System.out.println("conta bloqueada!");
                    }
                }
            }
        }


        sc.close();
    }
}

realizei um código diferente do instrutor, podem dar uma avaliação sobre?

1 resposta

Olá, Mizael! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso do Scanner para capturar entradas do usuário com Java, utilizou muito bem o for para controlar o número de tentativas e ainda compreendeu a importância da condicional para validar corretamente a senha e bloquear o acesso.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Uma dica interessante para o futuro é simplificar o controle de tentativas usando uma variável de contador. Assim:

Scanner sc = new Scanner(System.in);
int tentativas = 3;

while (tentativas > 0) {
    System.out.println("Digite sua senha: ");
    String senha = sc.nextLine();

    if (senha.equals("1234")) {
        System.out.println("Senha Correta! Acesso concedido!");
        break;
    } else {
        tentativas--;
        System.out.println("Senha incorreta! Tentativas restantes: " + tentativas);
        if (tentativas == 0) {
            System.out.println("Conta bloqueada!");
        }
    }
}
sc.close();

Isso faz com que o código fique mais legível e melhor de manter.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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