De la forma en que está el programa que nos sugiere la maestra, si adivino en el intento número 5, me dice que adiviné y luego me dice "Lo siento, no conseguiste adivinar el número en 5 intentos. El número era __"
Para evitar ésto yo pondría el if de "Lo siento" después del if de "Adivinaste" para que si ya es el quinto intento, me diga "Adivinaste" y pare con break y si no adiviné, y es el quinto, me diga "Lo siento"
Mi código:
import java.util.Random;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
int numeroAleatorio = new Random().nextInt(100);
System.out.println(numeroAleatorio);
System.out.println("ADIVINA EL NÚMERO");
System.out.println("TIENES 5 OPORTUNIDADES");
Scanner teclado = new Scanner(System.in);
int numeroDelJugador = 0;
for (int i = 0; i < 5; i++) {
System.out.println("Ingresa un número del 0 al 100");
numeroDelJugador = teclado.nextInt();
if (numeroDelJugador == numeroAleatorio) {
System.out.println("Adivinaste, " + numeroAleatorio + " es el número.");
break;
} else if (i == 4) {
System.out.println("Lo siento, se te agotaron las oportunidades, el número era " + numeroAleatorio + ".");
} else if (numeroDelJugador > numeroAleatorio) {
System.out.println("El número es menor, te " + ((i == 3)? "queda " : "quedan ") + (4 - i) + ((i == 3)? " oportunidad " : " oportunidades."));
} else {
System.out.println("El número es mayor, te " + ((i == 3)? "queda " : "quedan ") + (4 - i) + ((i == 3)? " oportunidad " : " oportunidades."));
}
}
}
}