Uma outra forma que encontrei para a exibição da mensagem de erro somente após a última tentativa foi criando uma condição em que a função alert só é chamada após a verificação do último índice do loop se o valor não estiver certo.

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Uma outra forma que encontrei para a exibição da mensagem de erro somente após a última tentativa foi criando uma condição em que a função alert só é chamada após a verificação do último índice do loop se o valor não estiver certo.

Olá Guilherme, tudo bem com você?
Meus parabéns pela implementação do código, fico feliz que tenha compartilhado-o com a comunidade do fórum Alura. Sua dedicação em ir além do proposto é de suma importância para o seu desenvolvimento.
Continue com essa dedicação e lembre-se que em caso de dúvidas, pode contar sempre com o fórum Alura para saná-las.
Fico à disposição.
Abraços e bons estudos.