Hola a todos, paso a dejar el código del ejercicio propuesto en el tema CU00672B del curso básico de programación Java. Desde ya muchas gracias. Saludos. Luis.
Clase principal, metodo main
// Programa para adivinar un numero pseudoaleatorios aprenderaprogramar.com
public class AdivinarNumero {
public static void main (String [ ] Args) {
int numeroBuscado = 0;
Integer tmpInteger = 0;
EntradaDeTeclado entradaMain = new EntradaDeTeclado();
char adivino = 'N';
NumeroAleatorio numero = new NumeroAleatorio();
numero.generarNumero();
numeroBuscado = numero.getNumero();
System.out.println("Trate de adivinar un número oculto de 1 a 100, ingrese un numero:");
while (adivino =='N') {
entradaMain.pedirEntrada();
tmpInteger = tmpInteger.valueOf (entradaMain.getEntrada() );
if (numeroBuscado==tmpInteger){adivino = 'S' ;} else {
if (numeroBuscado<tmpInteger){System.out.println("No has acertado: el número es menor. Prueba otra vez");} else {System.out.println("No has acertado: el número es mayor. Prueba otra vez");}}
} //Cierre del while exterior
System.out.println ("Felicitaciones, has adivinado !!!");
} } //Cierre del main y de la clase
Clase que genera un numero aleatorio entre 1 y 100 (ambos inclusivos)
import java.util.Random; //Ejemplo aprenderaprogramar.com
//Esta clase define un objeto que contienen un numero aleatorio entre 1 y 100
public class NumeroAleatorio {
//Campos de la clase
int numeroBuscado = 0;
public void generarNumero(){
Random numAleatorio;
numAleatorio = new Random ();
numeroBuscado = numAleatorio.nextInt(100)+1;
}
public int getNumero() {
return numeroBuscado;
} //Cierre del método
} //Cierre de la clase
clase para ingresar por el teclado - clase reutilizada
import java.util.Scanner; //Importación del código de la clase Scanner desde la biblioteca Java
// Definimos una clase EntradaDeTeclado aprenderaprogramar.com
public class EntradaDeTeclado {
private String entradaTeclado; //Variable de instancia (campo) de la clase
private int entradaNumero;
public EntradaDeTeclado () { //Constructor
entradaTeclado="";
entradaNumero=0;
// pedirEntrada(); //Esto es una llamada a un método interno. Al crear un objeto ejecutamos el método
} //Cierre del constructor
public void pedirEntrada () { //Método de la clase
Scanner entradaEscaner = new Scanner (System.in);
entradaTeclado = entradaEscaner.nextLine ();
} //Cierre del método pedirEntrada
public void pedirNumero (){
Scanner entradaEscaner = new Scanner (System.in);
entradaNumero = entradaEscaner.nextInt ();
}
public String getEntrada () { return entradaTeclado; } //Cierre del método getEntrada
public int getNumero() {return entradaNumero;}
public String getPrimeraPalabra () {
for (int i=0; i < entradaTeclado.length() - 1; i++) {
if (entradaTeclado.substring (i, i+1).equals(" ") ) { //IMPORTANTÍSIMO: COMPARAMOS CON EQUALS
return entradaTeclado.substring(0, i+1); }
}
return entradaTeclado; //Caso de que no se detecte ningún espacio devolvemos lo que haya
} //Cierre del método getPrimeraPalabra
public int getLongitud () { //Método de la clase
return entradaTeclado.length();
} //Cierre del método getLongitud
} //Cierre de la clase