// programa que hace que el usuario adivine un numero secreto generado al azar
import java.text.*;
import java.io.*;
class PruebaSecreto {
static public void main(String[]args)throws IOException{
	BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

	int secreto,intento, mayor, menor;
	mayor=100;
	menor=0;
		
	secreto=(int)Math.round(Math.random()*100);
	
	System.out.println("Adivine un numero entre 1 y 100");
	System.out.println("");
	
	//System.out.println(secreto);
	String otra="si";

// Profesor,no se por que no funciona el "jugar denuevo" pero segun sintaxis parece bueno
// la otra opcion seria al tomar el si o no, hacer un if, y si es no, que haga un break 
// ( cuando usabamos un while (true), pero como no lo piden, lo dejo asi no mas.
	while(otra=="si"){
	System.out.println("");
	System.out.println("Numero?");
	intento=Double.valueOf(in.readLine().trim()).intValue();
    
    	if(intento==0){
      		System.out.println("Los numeros mas cercanos fueron: "+ menor+" y "+mayor);
      		System.out.println("El numero secreto era: "+secreto);
      		System.out.println("");
      		System.out.println("Deseas intentar denuevo?? si/no");
    		otra=in.readLine();
      	}
    	else if(intento<secreto){
    		if (intento>menor){
    			System.out.println("No, el numero es mayor que "+intento);
    			menor=intento;
    		}
    		else
    		System.out.println("No, el numero es mayor que "+intento);
    	}
    	else if(intento > secreto){
    		if(intento<mayor){
    			System.out.println("No, el numero es menor que "+intento);
    			mayor=intento;
    		}
    		else
    			System.out.println("No, el numero es menor que "+intento);
    		}
    	if(intento == secreto){
    	System.out.println("Felicitaciones!! "+intento+" era el numero secreto");
    	System.out.println("");
    	System.out.println("Deseas intentar denuevo?? si/no");
    	otra=in.readLine();
        }
        
        
    }
}
}

	
