1
resposta

Resolução exercício 19

const tentativas = ["1234", "admin", "secreto", "admin"];
const senhaCorreta = "secreto";
let contadorSenha = 0;
do {
    if (contadorSenha === 3) {
        console.log(`Acesso bloqueado. Número máximo de ${contadorSenha} tentativas atingido.`);
        break;
    }
    if (tentativas[contadorSenha] === 'secreto') {
        console.log('Acesso permitido!');
        break;
    } else {
        console.log(`Tentativa nº ${contadorSenha + 1} inválida.`);
        contadorSenha++;
    }
} while (contadorSenha < tentativas.length);
1 resposta

Olá, Raonny, como vai?

Seu código atende bem à proposta do exercício e o uso do laço do...while funciona corretamente para o cenário de tentativas de login. A estrutura garante que pelo menos uma verificação seja executada e o controle de tentativas foi bem aplicado com a variável contadorSenha. A condição de bloqueio após três tentativas também foi implementada de forma adequada com o uso do break, interrompendo o laço quando o limite é atingido ou quando a senha correta é encontrada.

Um pequeno ajuste que pode melhorar a consistência do código é utilizar a variável senhaCorreta na comparação em vez de colocar a string diretamente. Dessa forma o código fica mais reutilizável e alinhado com a constante definida no início.

Obrigado por compartilhar sua resolução no fórum. Caso queira continuar explorando variações do problema, também vale experimentar resolver usando for ou while para comparar diferentes abordagens. O fórum segue à disposição para novas dúvidas e discussões.

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