martes, 24 de julio de 2012

Vectores paralelos ordenamiento

Vectores paralelos ordenamiento

import java.util.Scanner;


public class vectorparalelo {

    private Scanner teclado;
    private String[] paises;
    private int[] habitantes;
    
    public void cargarValores(){
        paises= new String[5];
        habitantes= new int[5];
        teclado=new Scanner(System.in);
        for (int f=0;f<5;f++){
            System.out.println("Introducir país: ");
            paises[f]=teclado.next();
            System.out.println("Introducir número de habitantes: ");
            habitantes[f]=teclado.nextInt();
        }
    }
    
    public void ordenarAlfabeticamente(){        
        for (int k=0;k<paises.length;k++){
            for (int f=0;f<paises.length-1-k;f++){
                if (paises[f].compareTo(paises[f+1])>0){
                    String aux;
                    aux=paises[f];
                    paises[f]=paises[f+1];
                    paises[f+1]=aux;
                    int aux2;
                    aux2=habitantes[f];
                    habitantes[f]=habitantes[f+1];
                    habitantes[f+1]=aux2;
                }
            }
        }    
    }
    
    public void imprimir1(){
        System.out.println("Ordenado alfabéticamente el resultado es: ");
        for(int f=0;f<paises.length;f++){
            System.out.println(paises[f]+" - "+habitantes[f]);
        }        
    }
    
    public void ordenarNumHabitantes(){
        for(int k=0;k<habitantes.length;k++){
            for (int f=0;f<habitantes.length-1-k;f++){
                if (habitantes[f]>habitantes[f+1]){
                    int aux;
                    aux=habitantes[f];
                    habitantes[f]=habitantes[f+1];
                    habitantes[f+1]=aux;
                    String aux2;
                    aux2=paises[f];
                    paises[f]=paises[f+1];
                    paises[f+1]=aux2;
                }
            }
        }
    }
    
    public void imprimir2(){
        System.out.println("");
        System.out.println("Ordenado según el número de habitantes el resultado es: ");
        for (int f=0;f<habitantes.length;f++){
            System.out.println(habitantes[f]+" - "+paises[f]);
        }
    }
    
    public static void main(String[] args) {

        vectorparalelo vect1=new vectorparalelo();
        vect1.cargarValores();
        vect1.ordenarAlfabeticamente();
        vect1.imprimir1();
        vect1.ordenarNumHabitantes();
        vect1.imprimir2();
    }

}

RESULTADO

Introducir país: 
Alemania
Introducir número de habitantes: 
800000
Introducir país: 
España
Introducir número de habitantes: 
400000
Introducir país: 
Francia
Introducir número de habitantes: 
600000
Introducir país: 
Portugal
Introducir número de habitantes: 
200000
Introducir país: 
Italia
Introducir número de habitantes: 
300000
Ordenado alfabéticamente el resultado es: 
Alemania - 800000
España - 400000
Francia - 600000
Italia - 300000
Portugal - 200000

Ordenado según el número de habitantes el resultado es: 
200000 - Portugal
300000 - Italia
400000 - España
600000 - Francia
800000 - Alemania

0 comentarios:

Publicar un comentario