Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

Ayuda con desarrollo de programa de ordenamiento Burbuja Mejorado en Netbeans

juandejesuss007

Bovino Milenario
Desde
19 Mar 2008
Mensajes
1.581
mi pregunta es, como puedo mandar un arreglo como parametro a una función para que realice el metodo, aquí adjunto el código de mi clase

Código:
package paqueteprincipal;
import java.util.Scanner;
/**
 *
 * @author jesus
 */
public class BurbujaMejorada {

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

        System.out.println("Burbuja Mejorada");
        System.out.println("Cuantos elementos deseas comparar");
        //Leemos la cantidad de elementos para calcular el tamano del arreglo
        int cantidad = Integer.parseInt(lector.next());
        
        //en base a esto creamos nuestro arreglo con el tamano establecido
        int Arreglo[] = new int[cantidad];

        int contador=1;
        
        
        do{//aca le pedimos al usuario que introduzca los valores para llenar nuestro arreglo
            System.out.println("Introduce el valor del numero " + contador + ":  " );
            Arreglo[contador -1] = lector.nextInt();
            contador++;

        }while(contador<=cantidad);

        //una vez hecho esto llamamos a nuestra funcion que ordena los elementos de nuestro array
        [B]System.out.println(BurbujaMejorada(Arreglo));[/B]

    }
    

    public static String BurbujaMejorada (int[] arreglo){
        String mensaje = "";

        int temp = 0, cont=0;
        //aca comenzamos a comparar y ordenar cada espacio del vector
        for(int i=1; i<arreglo.length;i++){
            for(int j=0; j<arreglo.length-1; j++){
                if(arreglo[j] > arreglo[j+1]){
                    temp = arreglo[j];
                    arreglo[j] = arreglo[j+1];
                    arreglo[j+1] = temp;
                }
            }
        }


        //comenzamos a concatenar los elementos ordenados en esta cadena
        mensaje = "el arreglo ordenado es:\n";
        do {
            mensaje+= "{" + arreglo[cont] + "}\n";
        }while(cont<= arreglo.length);
        
        //regresamos el mensaje con todos los elementos ordenados
        return mensaje;
    }

}

como pueden apreciar mi funcion se llama BurbujaMejorada, la cual funciona bien, lo que no se es como pasarle los parametros del arreglo que construí en la seccion main del programa, ayuda
 
ya pude resolverlo, tenía un par de problemas, si estaba pasando bien los arreglos como parametro para la función, solo me faltaban un par de contadores, por si hay alguien que le sirva mi ejercicio, se lo comparto

Código:
package paqueteprincipal;
import java.util.Scanner;
/**
 *
 * @author jesus
 */
public class BurbujaMejorada {

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

        System.out.println("Burbuja Mejorada");
        System.out.println("Cuantos elementos deseas comparar");
        //Leemos la cantidad de elementos para calcular el tamano del arreglo
        int cantidad = Integer.parseInt(lector.next());

        //en base a esto creamos nuestro arreglo con el tamano establecido
        int Arreglo[] = new int[cantidad];

        int contador=1;


        do{//aca le pedimos al usuario que introduzca los valores para llenar nuestro arreglo
            System.out.println("Introduce el valor del numero " + contador + ":  " );
            Arreglo[contador -1] = lector.nextInt();
            contador++;

        }while(contador<=cantidad);

        //una vez hecho esto llamamos a nuestra funcion que ordena los elementos de nuestro array
        System.out.println(BurbujaMejorada(Arreglo));
    }


    public static String BurbujaMejorada (int[] arreglo){
        String mensaje = "";

        int temp = 0, cont =0;
        //aca comenzamos a comparar y ordenar cada espacio del vector
        for(int i=1; i<arreglo.length;i++){
            for(int j=0; j<arreglo.length-1; j++){
                if(arreglo[j] > arreglo[j+1]){
                    temp = arreglo[j];
                    arreglo[j] = arreglo[j+1];
                    arreglo[j+1] = temp;
                }
            }
        }

        //comenzamos a concatenar los elementos ordenados en esta cadena
        mensaje = "el arreglo ordenado es:\n";
        do {
            mensaje+= "{" + arreglo[cont] + "}\n";
            cont++;
        }while(cont< arreglo.length);

        //regresamos el mensaje con todos los elementos ordenados
        return mensaje;
    }
}
 
Volver
Arriba