Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - fiisi

#1
hola a todos espero que este problema sea de mucha ayuda   a mucha gente que esra enpesando en el mundo java  ::)
bueno disculpen por lo malo que esta este post es mi segunda 2 que aporto y no me sale muy bien
;D


A MI PAKETE SE LLAMA listaenlazadadavid
les dejo un problema resuelto.
1)implementar una lista enlazada de datos enteros con las funciones basicas y adicionar las sgtes funciones.
1º que calcule el mayor de los datos e indike la posicion en que se encuentre.
2ºke calcule el dato minimo y cuente la cantidad de veces que se repita.
3ºque sume los datos de una lista recursivamente.
4º que sume los datos pares de una lisa recursivamente.
5º que visualize los datos pares de la lista recursivamente.
6º que muestre los numeros primos.
7º que ordene los datos de la lista.
8ºke verifike si esta ordenada.
9º que invierta la lista.
10º que buske un dato el la lista recursivamente.
11ºke elimine un dato recursivamente.
12ºke duplike los datos e la lista y lo almacene en otra lista.
aca esta todo los codigos:

//  principal  de aqui sale todo
package listaenlazadadavid;

/**
*
* xD
*/
public class Principal
    {

        public static void main(String[] args)
        {
     Lista l1= new Lista();

     
     l1.Ingresar(2);
     l1.Ingresar(10);
     l1.Ingresar(10);
     l1.Ingresar(14);
     l1.Ingresar(16);
     l1.Ingresar(9);
     l1.Ingresar(12);
     l1.Visualizar();
     l1.Buscar(2);
     l1.Buscar(8);
     l1.EliminarTodo_Recursivo(10);

   
      l1.Visualizar();
      l1.MayoryPosicion();
      l1.MenoryRepeticion();
      l1.Suma_Recursivo();
      l1.SumaPares_Recursivo();
      l1.MenoresNumero(15);
     
        }

    }



//creas una nueva class

package listaenlazadadavid;

/*
    xD
*/

   public class Nodo
    {//para  privado
    private int info;
    private Nodo sig;
    //Creamo el constructor.-El constructor crea objeto
       public Nodo(int n)
       {//Creamos variables de entrada=info y siguiente=sig
             info=n;
             sig=null;
             
       }
       // sacar el dato info
       public int SacarInfo()
       {//Con este metodo ya tenemos la variable info
           return info;
       }
       public Nodo SacarSig()
       {
           return  sig;
       }
       public void Enlace(Nodo g)
       {         
           sig=g;
       }

     
    }
   
   

//nuevo class  todo va toda la lista que esta enumerada arriba.

package listaenlazadadavid;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;

/**
*
* xD
*
*/
public class Lista
    {
    //Creamos los tipos de nodo
    private Nodo primero, ultimo;
   
    //Creacion del contructor
    public Lista()
    {
        primero=ultimo=null;
    }
    // para ver si esta vacia
    public boolean EstaVacia()
    {
        return primero==null;
    }
    //En este metodo
     public void Ingresar(int n)
     {   //llamamos a la referencia
         Nodo p= new Nodo(n);
         //entra if
         if(EstaVacia())
             primero=ultimo=p;
         else
         {
             ultimo.Enlace(p);
             ultimo=p;
         }       
         
     }
     public void Visualizar()
     {
         
        Nodo p=primero; String Salida="Datos :\n ";

       while (p!=null)
         {             
         Salida=Salida+ p.SacarInfo()+"\n";
         p=p.SacarSig();
         }
   
       JTextArea areaSalida= new JTextArea();
       areaSalida.setText(Salida);
       JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
       
     }

     public void Buscar(int n)
     {
            if(EstaVacia())         
             return;
             Nodo p=primero;
             String salida="Resultado:\n";
              while (p!=null && p.SacarInfo()!=n)
                  {
                  p=p.SacarSig();
                 }
                  if(p==null)
                  {
                      salida=salida+"Dato no encontrado";
                  }
                  else
                  {
                      salida=salida+"Dato encontrado";
                  }
              JTextArea areaSalida= new JTextArea();
       areaSalida.setText(salida);
       JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
               
        }
         
    public void Buscar_Recursivo(Nodo p,int n)
      {
          if(EstaVacia())
              return ;
                   
          if(p.SacarInfo()!=n)
              Buscar(n);
          Buscar_Recursivo(p.SacarSig(), n);
      }
      public void Buscar_Recursivo(int n)
      {
          Buscar_Recursivo(primero,n);
      }
      public void Eliminar(int n)
      {
         
          if(EstaVacia())
          return ;
          Nodo p=primero; Nodo q=null;
          while(p!=null && p.SacarInfo()!=n)
          {
              q=p;
              p=p.SacarSig();
          }
          if(p==primero)             
          {
              primero=p.SacarSig();
          }
          else
          {
              q.Enlace(p.SacarSig());
              if(p==ultimo)
                  ultimo=q;                           
          }
                             
      }
      public void EliminarTodo(int n)
      {
          if(EstaVacia())
              return;
          Nodo p=primero;
          while(p!=null)
          {
              if(p.SacarInfo()==n)
                  this.Eliminar(n);
              p=p.SacarSig();
          }
      }
      public void EliminarTodo_Recursivo(Nodo p,int n)
      {
          if(p==null)
              return ;
                   
          if(p.SacarInfo()==n)
              Eliminar(n);
         EliminarTodo_Recursivo(p.SacarSig(), n);
      }
      public void EliminarTodo_Recursivo(int n)
      {
         EliminarTodo_Recursivo(primero,n);
      }
      public void Suma_Recursivo(Nodo p,int s)
      {
          if(p==null)
          {
       JTextArea areaSalida= new JTextArea();
       areaSalida.setText("La Suma total es:"+s);
       JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
       return ;
          } 
         
             
        Suma_Recursivo(p.SacarSig(), s+p.SacarInfo());
      }
      public void Suma_Recursivo( )
      {
       Suma_Recursivo(primero,0);
      }
      public int Suma(Nodo p)
      {
          if(p==null)
              return 0;
          return p.SacarInfo()+Suma(p.SacarSig());
      }
      public void SumaDatos()
      {
         int s=Suma(primero);
      }
private int MaximoNumero(Nodo oNodoTemporal, int numerador)
       {     
         if(oNodoTemporal==null)
            {           
            return ultimo.SacarInfo();
         
            }
        if(MaximoNumero(oNodoTemporal.SacarSig(), numerador-1)<=oNodoTemporal.SacarInfo())
            {                   
            return oNodoTemporal.SacarInfo();
            }
         
        return MaximoNumero(oNodoTemporal.SacarSig(),numerador-1);
    }

     public void BuscarPosicion(int n)
     {
            if(EstaVacia())         
             return;
             Nodo p=primero;
             String salida="Resultado:\n";
             int i=0;
              while (p!=null)
              {
                 
                  if(p==null)
                        {
                      salida=salida+"Dato no encontrado";
                        }
                  if(p.SacarInfo()==n)
                      {
                      salida=salida+"La posicion del dato es :"+i;
                      }
                  p=p.SacarSig();
             i++;
             
              }
       JTextArea areaSalida= new JTextArea();
       areaSalida.setText(salida);
       JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
               
        }
     
    public int contadorDeElementos(){
        Nodo oNodoTemporal = primero;
        int i=0;
        while(oNodoTemporal!=null)
        {
           i++;
           oNodoTemporal=oNodoTemporal.SacarSig();
        }     
        return i;
    }
     public void MayoryPosicion()
     {
         int maximo=MaximoNumero(primero, contadorDeElementos());
         JTextArea areaSalida= new JTextArea();
         areaSalida.setText("El numero maximo es :"+maximo+"");
         JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
         BuscarPosicion(maximo);
     }
     private int MinimoNumero(Nodo oNodoTemporal, int numerador)
       {     
         if(oNodoTemporal==null)
            {           
            return ultimo.SacarInfo();
         
            }
        if(MinimoNumero(oNodoTemporal.SacarSig(), numerador-1)>=oNodoTemporal.SacarInfo())
            {                   
            return oNodoTemporal.SacarInfo();
            }
         
        return MinimoNumero(oNodoTemporal.SacarSig(),numerador-1);
    }
     
       public void contadorDeRepeticiones(int n)
       {
     
        int i=0;
     
        if(EstaVacia())
        {
             return;
        }
             Nodo p=primero;
             String salida="Resultado:\n";
              while (p!=null )
                  {
                  if(p.SacarInfo()==n)
                  {
                  i++;
                  }
                  p=p.SacarSig();
                 }
                  if(i==0)
                  {
                      salida=salida+"Dato no encontrado";
                  }
                  else
                  {
                      salida=salida+"Se repite:"+i+" veces";
                  }
       JTextArea areaSalida= new JTextArea();
       areaSalida.setText(salida);
       JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
            }
       
        public void MenoryRepeticion()
     {
         int minimo=MinimoNumero(primero, contadorDeElementos());
         JTextArea areaSalida= new JTextArea();
         areaSalida.setText("El numero minimo es :"+minimo+"");
         JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
         contadorDeRepeticiones(minimo);
     }
   public void SumaPares_Recursivo(Nodo p,int s)
      {
          if(p==null)
          {
       JTextArea areaSalida= new JTextArea();
       areaSalida.setText("La Suma de todos loa  pares es:"+s);
       JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
              return ;
          } 
         if(p.SacarInfo()%2==0)
         { 
              SumaPares_Recursivo(p.SacarSig(),p.SacarInfo()+s);
         }
         else{   
        SumaPares_Recursivo(p.SacarSig(), s);
         }
      }
      public void SumaPares_Recursivo( )
      {
       SumaPares_Recursivo(primero,0);
      }
       private void MenoresNumero(Nodo oNodoTemporal, int numero,String acumulador)
       {     
         if(oNodoTemporal==null)
            {           
            JTextArea areaSalida= new JTextArea();
            areaSalida.setText("Los numeros menores de:"+numero+" son :"+acumulador);
            JOptionPane.showMessageDialog(null,areaSalida,"Salida",JOptionPane.INFORMATION_MESSAGE);
            return ;
         
            }
        if(oNodoTemporal.SacarInfo()<numero)
            {                   
            MenoresNumero(oNodoTemporal.SacarSig(), numero, acumulador+" , "+oNodoTemporal.SacarInfo());
            }
        else
        {
        MenoresNumero(oNodoTemporal.SacarSig(),numero,acumulador);
        }
    } 
   public void MenoresNumero(int n )
      {
       MenoresNumero(primero,n,"");
   }

   
   

}
   

   
bueno ojala entiendan todo corre ala perfeccion lo hize yo mismo con el programa netbeans
este paquete tiene todo estas funciones
l1.Ingresar(2);
     l1.Ingresar
     l1.Ingresar
     l1.Ingresar
     l1.Ingresar
     l1.Ingresar
     l1.Ingresar
     l1.Visualizar
     l1.Buscar
     l1.Buscar
     l1.EliminarTodo_Recursivo

   
      l1.Visualizar
      l1.MayoryPosicion
      l1.MenoryRepeticion
      l1.Suma_Recursivo
      l1.SumaPares_Recursivo
       .MenoresNumero

;-) 
#2
hola como estan aqui de nuevo
les voya entregar un super pack de problemas resueltos
tiene todo

prosesos secuenciales
while
if else
do while
.
.............. etc  son 140 problemas

lo instalan y lo encontraran el la parte donde se guarda los archivos resueltos de borland
bin

esta todo explicado
todos los problemas estan bien echo

saludos

http://rapidshare.com/files/121545775/www.ksdeporxd.tk__140problemas_de_borland_c__.rar
para poder descargar primero
1º poner en free
2º poner los gatitos q sale solo gatitos  luego a descargar xD


;D ;D ;D ;D