No me puedo creer la generosidad de todos! Así es muy bueno aprender.
Alex: No me sabía esto del break, y me alegro de que me lo digas. La verdad es que no se me ocurría cómo resolver la salida del bucle en el medio del proceso, y tu idea me parece perfecta. Ya lo cambio.
Toni: Me siento observado, están todos conmigo! jajaja! Siento que no hay forma de que se pase un error por alto, por lo que este foro y el curso en general me dan una sensación de garantía de calidad muy alta!
Tus dos aportes me han ayudado a pensar mejor el código. Qué frustrante jugar a una adivinanza en la que al final no te dicen la respuesta!! Debo corregir eso!. Y también se me pasó por alto que el juego debe incluir el 0, y que para llegar a 100 debo poner:
int randomInt = randomGenerator.nextInt(101);
A continuación copio el código corregido con todos los aportes...
import java.util.Random;
import java.util.Scanner;
public class RandomInteger {
public static void main(String [] Args) {
Scanner entrada = new Scanner (System.in);
String j = "1";
while (j.equals("1")) {
System.out.println ("\f");
System.out.println ("Adivina el número del 0 al 100 que hemos pensado");
Random randomGenerator = new Random();
int randomInt = randomGenerator.nextInt(101);
boolean salir = false;
int i = 0;
while (i < 10 && salir == false) {
System.out.println("Intenta adivinar, te quedan " + (10-i) + " intentos");
int primerIntento = entrada.nextInt();
if (primerIntento == randomInt) {
System.out.println ("Acertaste");
salir = true;
} else if (primerIntento < randomInt) {
System.out.println ("No. El número a adivinar es mayor que ese");
} else {
System.out.println ("No. El numero a adivinar es menor que ese");
}
i++;
}
if ((10-i) == 0) {
System.out.println ("Se acabaron tus opciones. El número buscado era " + randomInt);
} else {
}
System.out.println ("Ha terminado el juego");
System.out.println ("¿Quieres juegar de nuevo? Presiona 1");
System.out.println ("Sino presiona cualquier otra tecla");
j = entrada.next();
System.out.println ("Gracias por jugar");
}
}
}