Fiz com for e gostaria de saber se ficou bom.
import java.util.Random;
import java.util.Scanner;
public class JogoAdivinhacao {
public static void main(String[] args) {
Random aleatorio = new Random();
Scanner adivinha = new Scanner(System.in);
int numeroaleatorio = aleatorio.nextInt(101);
System.out.println("Número aleatório: "+numeroaleatorio); //Apenas para ajudar nos testes
int tentativas;
for (tentativas = 0; tentativas <= 5; tentativas++) {
System.out.println("Tentativas "+ tentativas + " de 5");
System.out.print("Tente adivinhar o número secreto de 1 a 100: ");
int numero = adivinha.nextInt();
if(numero < 0||numero > 100)
{
System.out.println("Seu número está fora da faixa de 0 a 100.");
tentativas--;
}
else if(numero == numeroaleatorio)
{
System.out.println("Parabéns, você ganhou!");
break;
}else if(numero > numeroaleatorio)
{
System.out.println("Seu número foi maior que o número aleatório, tente novamente.");
}else
{
System.out.println("Seu número foi menor que o número aleatório, tente novamente.");
}
}
if(tentativas > 5)
{
System.out.println("Suas tentativas acabaram. O número secreto era: " +numeroaleatorio);
}
}
}