miércoles, 29 de abril de 2009

Diagrama de Datos y Seudo Codigo Version 2

Codigo Java
..

public class Test

{

                public static void main(String args[])

                {

                               CArbolBinarioDeBusqueda arbolbb=new CArbolBinarioDeBusqueda();

                               String nombre;

                               double nota;

                               int i=0,cod;

                               System.out.println("Introducir datos. Finalizar con Ctrl+z.");

                               System.out.println("nombre: ");

                               while((nombre=Leer.dato())!=null)

                               {

                                               System.out.print("nota: ");

                                               nota=Leer.datoDouble();

                                               cod=arbolbb.insertar(new CDatos(nombre,nota));

                                               if(cod==CArbolBinarioDeBusqueda.YA_EXISTE)

                                               {

                                                               CDatos datos=(CDatos)arbolbb.buscar(new CDatos(nombre,nota));

                                                               if(nota>=0)

                                                                              datos.asignarNota(nota);

                                                               else

                                                                              {

                                                                                              if(arbolbb.borrar(new CDatos(nombre,nota))==null)

                                                                                                              System.out.println("nodo borrado porque no existe");

                                                                                              else

                                                                                                              System.out.println("nodo borrado");

                                                                              }

                               }

                               System.out.print("nombre: ");

                }

                System.out.println("\n");

               

                System.out.println("\nArbolInorden: ");

                arbolbb.visitarInorden();

                System.out.println("\nArbol posorden: ");

                arbolbb.visitarPosorden();

                System.out.println("\nArbol preorden: ");

                arbolbb.visitarPreorden();

                }

}

Seudo Codigo
Diagrama Primera Parte
Diagrama Segunda Parte
Codificacion SecudoCodigo y Diagrama de Flujo 1 para el reccorrido de un arbol Primera parte del diagrama Segunda parte del diagrama

Codificacion de un Arbol mediante Listas

import java.io.*;

public class Leer{

                public static String dato(){

                               String sdato = "";

                               try{

                                               InputStreamReader isr =

                                                               new InputStreamReader(System.in);

                                               BufferedReader flujoE=

                                                               new BufferedReader(isr);

                                               sdato = flujoE.readLine();

                               }

                               catch(IOException e){

                                               System.err.println("Error: " + e.getMessage());

                               }

                               return sdato;

                }

 

                public static short datoShort(){

                               try{

                                               return Short.parseShort(dato());

                               }

                               catch(NumberFormatException e){

                                              

                                               return Short.MIN_VALUE;

                               }

                }

 

                public static int datoInt(){

                               try{

                                               return Integer.parseInt(dato());

                               }

                               catch(NumberFormatException e){

                                               return Integer.MIN_VALUE;

                               }

                }

 

                public static long datoLong(){

                               try{

                                               return Long.parseLong(dato());

                               }

                               catch(NumberFormatException e){

                                               return Long.MIN_VALUE;

                               }

                }

 

                public static float datoFloat(){

                               try{

                                               Float f = new Float(dato());

                                               return f.floatValue();

                               }

                               catch(NumberFormatException e){

                                               return Float.NaN;

                }

                }

 

                public static double datoDouble(){

                               try{

                                               Double d = new Double(dato());

                                               return d.doubleValue();

                               }

                               catch(NumberFormatException e){

                                               return Double.NaN;

                               }

                }

 

                public static String datoString(){

                               return dato();

                }

               

                public static char datoChar(){

                               int c=0;

                               try{

                                               InputStreamReader isr =

                                                               new InputStreamReader(System.in);

                                               BufferedReader flujoE=

                                                               new BufferedReader(isr);

                                               c=flujoE.read();

                                               char car;

                                               car=(char) c;

                                               return car;

                               }

                               catch(IOException e){

                                               return '\0';

                               }

                }

}