Algoritmo búsqueda secuencial con Strings en Java

mayo 17, 2011 | By | Reply More

El siguiente programa desarrollado en el lenguaje de programación Java cumple con los siguientes requerimientos.

  • Crea un menú de opciones (INSERTAR, CONSULTAR, ELIMINAR Y FINALIZAR).
  • INSERTAR: almacena el nombre de una personas en vectores estáticos tipo String de tamaño 50.
  • CONSULTAR: Utilizando el algoritmo de búsqueda secuencial pide el nombre y si lo encuentra imprime un mensaje de encontrado, en caso contrario un mensaje de no localizado.
  • ELIMINAR: Utilizando el algoritmo de búsqueda secuencial pide el nombre y si lo encuentra imprime un mensaje de encontrado y elimina el nombre ajustando el vector para no dejar espacios en blanco, en caso contrario un mensaje de no localizado.
  • FINALIZAR: Imprime los nombres almacenado y sale del programa.


import java.io.BufferedReader;
import java.io.InputStreamReader;

public class BusquedaSecuencial {

    static BufferedReader br = null;
    static String N= "";
    static int n=0;
    static String[] Nombre = new String[50];
    static String[] APaterno = new String[50];
    static String[] AMaterno = new String[50];

    public static void main (String args[]){
        br = new BufferedReader(new InputStreamReader(System.in));

        do{
            menu();
        }while(Integer.parseInt(N)!=4);
    }

    public static void menu(){
         do{
            System.out.println("Selecciona una de las opciones del menú: \n "
                                    + "1- INSERTAR \n "
                                    + "2- CONSULTAR "
                                    + "\n 3- ELIMINAR \n "
                                    + "4- FINALIZAR");
            try{
                 N = br.readLine();
            }catch(Exception e){
                e.printStackTrace();
            }
        }while(!esEntero(N) || conversor(N)<=0 || conversor(N)>=5 );

         switch(Integer.parseInt(N)){
            case 1:
                insertar();
                break;
            case 2:
                consultar();
                break;
            case 3:
                eliminar();
                break;
            case 4:
                imprimir();
                break;
        }
    }

    public static void consultar(){
        if(n>0){
            String nombre="";
            int eureka=0;

            try{
                    System.out.println("Ingresa el Nombre : ");
                    nombre = br.readLine();
                }catch(Exception e){
                    e.printStackTrace();
                }

            for(int i=0; i<n; i++){
                if(Nombre[i].equals(nombre)){
                    eureka=1;
                }
            }
            if(eureka==1){
                System.out.println("Nombre encontrado!!!!!. ");
            }else{
                System.out.println("Nombre NO localizado!!!!!. ");
            }
        }
        else{
            System.out.println("No hay elementos en la lista. ");
        }

    }

    public static boolean esEntero(String cad) {
        for(int i = 0; i<cad.length(); i++)
            if( !Character.isDigit(cad.charAt(i)) )
        return false;

        return true;
    }

    public static int conversor(String x){
        int valor=0;

        try{
            valor= Integer.parseInt(x);
        }catch(NumberFormatException e){
            System.out.println("Valor invalido");
        }

        return valor;
    }

    public static void insertar(){

            if(n<50){
                System.out.println("Leyendo datos de la persona: " + (n+1));

            try{
                 System.out.println("Ingresa el Apellido Paterno: ");
                 APaterno[n] = br.readLine();
            }catch(Exception e){
                e.printStackTrace();
            }

            try{
                System.out.println("Ingresa el Apellido Materno: ");
                AMaterno[n] = br.readLine();
            }catch(Exception e){
                e.printStackTrace();
            }

            try{
                 System.out.println("Ingresa el nombre: ");
                 Nombre[n] = br.readLine();
            }catch(Exception e){
                e.printStackTrace();
            }

            n++;
            }else{
                System.out.println("El vector esta lleno, elimina personas para poder insertar");
            }

    }

    public static void eliminar(){
            String nombre="";
            int encontrados=0;

        if(n>0){

            try{
                    System.out.println("Ingresa el Nombre : ");
                    nombre = br.readLine();
                }catch(Exception e){
                    e.printStackTrace();
                }

            for(int i=0; i<n; i++){
                if(Nombre[i].equals(nombre)){
                    encontrados++;
                    for(int j=i; j<n; j++){
                        Nombre[j]=Nombre[j+1];
                        APaterno[j]=APaterno[j+1];
                        AMaterno[j]=AMaterno[j+1];
                    }
                    i--;
                    n--;
                }
            }
            if(encontrados>0){
                System.out.println("Nombre encontrado, procediendo a eliminar!!!!!. ");
            }else{
                System.out.println("Nombre NO localizado!!!!!. ");
            }
        }else{
            System.out.println("No hay elementos a eliminar.");
        }

    }

    public static void imprimir(){
        if(n>0){
            System.out.println("Apellido paterno  Apellido Materno   Nombre");
            for(int i=0; i<n; i++){
                System.out.print(i+1 + ".- " + APaterno[i] + "\t");
                System.out.print(AMaterno [i] + "\t        ");
                System.out.print(Nombre [i] + ".");
                System.out.println();
            }
        }
    }

}

Búsquedas populares:

busqueda secuencial en java, algoritmo de busqueda secuencial en java, codigo de busqueda secuencial en java, programa de busqueda secuencial en java, busqueda secuencial en java codigo, Búsqueda secuencial en java, codigo busqueda secuencial en java, metodo secuencial en java, algoritmo de busqueda secuencial java, algoritmo busqueda secuencial java, metodo de busqueda secuencial en java, Algoritmos de busqueda en Java, codigo busqueda secuencial java, busqueda secuencial java codigo, programa de metodo secuencial en java, algoritmos de busqueda java, metodo secuencial java, java busqueda secuencial, busqueda de cadenas en java, codigo java busqueda secuencial, codigo en java de busqueda secuencial, algoritmo de busqueda en java, algoritmo de busqueda java, busqueda de datos secuencial en java, busqueda secuencial codigo java,

Tags: , , , , , , ,

Category: Java, Programacion

About the Author ()

Leave a Reply