hola que tal estoy haciendo un juego de adivinar animales pero necesito hacerlo recursivo pero no tengo idea de como aplicar la recursion
aquí les comparto el código
package evidencia;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
Memoria memory = (Memoria)in.readObject();
memory.iniciar("vaca");
os.writeObject(memory);
}
}
package evidencia;
import java.io.Serializable;
public Arbol izquierda;
public Arbol derecha;
public E carga;
public Arbol() {
}
public Arbol(Arbol izquierda,Arbol derecha, E carga){
this.izquierda = izquierda;
this.derecha = derecha;
this.carga = carga;
}
public Arbol(E cargar){
this.izquierda = null;
this.derecha = null;
this.carga = cargar;
}
@Override
return carga.toString();
}
}
package evidencia;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Serializable;
private Arbol raiz;
String respuesta
= sc.
readLine();
return "si".equals(respuesta.toLowerCase());
}
boolean bucle = true;
if(raiz == null){
raiz = new Arbol(firstAnimal);
}
while(bucle){
if (!si("¿Estas pensando en un Animal?")) {
break;
}
Arbol arbol = raiz;
while(arbol.izquierda !=null){
if (si(arbol.carga+"?")) {
arbol = arbol.izquierda;
}else{
arbol = arbol.derecha;
}
}
if (si("Es un "+animal+"?")) {
System.
out.
println("Adivine!!"); continue;
}
if(arbol.derecha == null){
System.
out.
println("¿Que animal era?"); System.
out.
println("que diferencia a un(a) " +animal
+ " de un "+nuevo
+"?"); String indicador
= "Si el animal fuera un(a) "+animal
+" cual seria la respuesta"; arbol.carga = info;
if (si(indicador)) {
arbol.izquierda = new Arbol(animal);
arbol.derecha = new Arbol(nuevo);
}else{
arbol.derecha = new Arbol(animal);
arbol.izquierda = new Arbol(nuevo);
}
}else{
System.
out.
println(arbol.
derecha); }
}
}
}