Olá, Aldenir!
Primeiramente, percebi que você está gerando um número aleatório duas vezes dentro do loop for. Isso faz com que a comparação entre o número digitado pelo usuário e o número sorteado seja feita com números diferentes. Para corrigir isso, sugiro que você armazene o número sorteado em uma variável fora do loop, assim você pode utilizá-lo nas comparações.
Outro ponto que notei é que você está gerando um novo número aleatório a cada comparação. Isso faz com que o número sorteado seja diferente a cada vez que você compara com o número digitado pelo usuário. Para resolver isso, sugiro que você armazene o número sorteado em uma variável antes do loop e utilize essa mesma variável em todas as comparações.
Além disso, você não está incrementando a variável i
dentro do loop, o que faz com que o loop seja executado apenas uma vez. Para corrigir isso, adicione i++
no final do loop.
Aqui está o código corrigido:
import java.util.Random;
import java.util.Scanner;
class tentativa {
public static void main(String[] args) {
Scanner leitura = new Scanner(System.in);
Random random = new Random();
int numeroSorteado = random.nextInt(100);
System.out.println("Qual o número sorteado? ");
for (int i = 1; i <= 5; i++) {
int numero = leitura.nextInt();
if (numero == numeroSorteado) {
System.out.println("Você acertou! O número certo era " + numeroSorteado);
break;
} else if (numero < numeroSorteado) {
System.out.println("ERROU! Esse número é menor que o número sorteado");
} else {
System.out.println("ERROU! Esse número é maior que o número sorteado");
}
}
System.out.println("Jogo acabou");
}
}
Espero que isso tenha te ajudado a entender o que estava errado no seu código.