lunes, 30 de octubre de 2017

Árbol Binario

codigo 1


public class BTree {
    private BTree izquierda= null;
    private BTree derecha= null;
    private Object elemento;

    public static int LADO_IZDO= 1;
    public static int LADO_DRCHO= 2;

    public BTree(Object elemento) {
this.elemento  = elemento ;
    }

    public Object getElement() {
return elemento;
    }

    public BTree getIzquierda() {
return izquierda;
    }

    public BTree getDerecha() {
return derecha;
    }

    public void insertar(BTree tree, int lado) throws BTreeException {

if (lado==LADO_IZDO) {
    if (izquierda==null) izquierda= tree;
    else throw new BTreeException("Ya hay un árbol enlazado");
} else  if (lado==LADO_DRCHO) {
    if (derecha==null) derecha= tree;
    else throw new BTreeException("Ya hay un árbol enlazado");
} else throw new BTreeException("Lado incorrecto");

    }

    public BTree extraer(int lado) throws BTreeException {
        BTree subarbol;

if (lado==LADO_IZDO) {
    subarbol= izquierda;
            izquierda= null;
} else  if (lado==LADO_DRCHO) {
    subarbol= derecha;
            derecha= null;
} else throw new BTreeException("Lado incorrecto");

return subarbol;
    }

    public void imprimePreOrden() {
System.out.println(elemento);
if (izquierda!=null) izquierda.imprimePreOrden();
if (derecha!=null) derecha.imprimePreOrden();
    }

    public void imprimePostOrden() {
if (izquierda!=null) izquierda.imprimePostOrden();
if (derecha!=null) derecha.imprimePostOrden();
System.out.println(elemento);
    }

    public void imprimeEnOrden() {
if (izquierda!=null) izquierda.imprimeEnOrden();
System.out.println(elemento);
if (derecha!=null) derecha.imprimeEnOrden();
    }

}


codigo 2

public class BTreeException extends Exception {
    public BTreeException (String mensaje) {
super(mensaje);
    }
}


codigo 3



public class Trabalenguas {



    public static void main(String args[]) {
BTree trabalenguas, subarbol, temporal;
try {
    trabalenguas= new BTree("Tres");
    subarbol= new BTree("tristes");
    trabalenguas.insertar(subarbol, BTree.LADO_IZDO);
    temporal= new BTree("tigres");
    trabalenguas.insertar(temporal, BTree.LADO_DRCHO);
    temporal= new BTree("comían");
    subarbol.insertar(temporal, BTree.LADO_IZDO);
    temporal= new BTree("trigo");
    subarbol.insertar(temporal, BTree.LADO_DRCHO);

} catch (BTreeException ex) {
    System.out.println(ex.getMessage());
    return;
}

trabalenguas.imprimePreOrden();
System.out.println("------------------");
trabalenguas.imprimeEnOrden();
System.out.println("------------------");
trabalenguas.imprimePostOrden();

System.out.println("------------------");
System.out.println("------------------");

try {
    subarbol= trabalenguas.extraer(BTree.LADO_IZDO);
} catch (BTreeException ex) {
    System.out.println(ex.getMessage());
    return;
}
trabalenguas.imprimePreOrden();

    }
}

lunes, 2 de octubre de 2017

Array List

Código de un Arraylist

 public class NodoLista4{ 
    String nom; 
    int calif1; 
    int calif2; 
    int calif3; 
}


import java.util.*; 
public class ListaAlumnos{ 

       static double prom; 
   public static void main( String args[] ){ 
     Scanner leer = new Scanner(System.in); 

        NodoLista4 nodo = new NodoLista4(); 
        int op; 

        ArrayList lista = new ArrayList(); 
     do{ 
        System.out.println( "Ingrese el nombre del alumno:" ); 
        nodo.nom = leer.next(); 
        System.out.println( "Ingrese la primera calificación:" ); 
        nodo.calif1 = leer.nextInt(); 
        System.out.println( "Ingrese la segunda calificación:" ); 
        nodo.calif2 = leer.nextInt(); 
        System.out.println( "Ingrese la tercera calificación:" ); 
        nodo.calif3 = leer.nextInt(); 

        lista.add("Nombre del alumno:\n"+nodo.nom); 
        lista.add("Calificación 1:\n"+nodo.calif1); 
        lista.add("Calificación 2:\n"+nodo.calif2); 
        lista.add("Calificación 3\n"+nodo.calif3); 

        promedio(nodo.calif1, nodo.calif2, nodo.calif3); 

        lista.add("Su promedio es:\n"+prom); 

        System.out.println( "¿Desea ingresar otro alumno?" ); 
        System.out.println( "1.-Si\t 2.-No" ); 
        op = leer.nextInt(); 
     } 
      while(op != 2); 
        List lista2 = new ArrayList(lista); 
        Iterator it = lista2.iterator(); 
       while (it.hasNext()){ 
            System.out.println(it.next()+""); 
         } 
   } 

      private static double promedio(int calif1, int calif2, int calif3){ 
          int suma = calif1 + calif2 + calif3; 
          prom = suma/3; 
          return prom; 
      } 
}

martes, 1 de agosto de 2017

Libro de C

A todos los interesados en recibir gratuitamente un extracto de mi libro de programación favor de llenar la siguiente encuesta

http://bit.ly/2u0NaJG


saludos cordiales