Por favor, poderiam contribuir com uma análise do código?
import java.util.Scanner;
import java.util.Random;
public class JogoAdivinhacao
{
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int numeroAleatorio = new Random().nextInt(100);
//System.out.println(numeroAleatorio); //exibe o número aleatório para fins de teste.
int tentativas = 0;
Boolean vencedor = false;
while(tentativas < 5) {
System.out.println("Digite um número entre 0 e 100");
int chute = scanner.nextInt();
tentativas++;
if (numeroAleatorio == chute) {
System.out.println("Parabéns você acertou!!! em: " + tentativas + " tentativas!!!");
vencedor = true;
break;
} else if (numeroAleatorio > chute) {
System.out.println("Não foi dessa vez! O número é maior do que o seu palpite!");
} else {
System.out.println("Quase!!! O número é menor do que o seu palpite!");
}
}
if (tentativas == 5 && vencedor.equals(false)) {
System.out.println("Você perdeu! O número era: " + numeroAleatorio);
}
}
}