Autor Tema: Programa en Java que ordene nombres alfabéticamente de la a a la z  (Leído 26769 veces)

flpe45

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 2
    • Ver Perfil
PERO AL  MISMO TIEMPO DEBE PEDIR CUANTOS NOMBRES QUIERES INGRESAR HASTA AHORA SOLO LLEVO ESTO AYUDAA!!!!!!!

Código: [Seleccionar]
import java.util.Scanner;

    public class Nombres {
    private Scanner teclado;
    private String[] nombres;
    int n;
   

    public void leerDatos() {
    Scanner entrada = new Scanner(System.in);
    System.out.printf("Dame el numero de nombres a ingresar:\n");
      n = entrada.nextInt();
   
         teclado=new Scanner(System.in);
         nombres=new String[n];
         for(int i=0;i<nombres.length;i++) {
             System.out.println("Ingrese el nombre:");
             nombres[i]=teclado.next();
         }
     }

     public void ordenar() {
         for(int j=0;j<4;j++) {
             for(int i=0;i<4-j;i++) {
                 if (nombres[i].compareTo(nombres[i+1])>0) {
                     String aux;
                     aux=nombres[i];
                     nombres[i]=nombres[i+1];
                     nombres[i+1]=aux;
                 }
             }
         }
     }
 
     public void imprimirInfo() {
      System.out.println("NOMBRES:");
      System.out.println("ORDENADOS DE A - Z");
         for(int i=0;i<nombres.length;i++) {
             System.out.println(nombres[i]);
         }
     }
     
     public static void main(String[] ar) {
         Nombres nom=new Nombres();
         nom.leerDatos();
         nom.ordenar();
         nom.imprimirInfo();

}
}
« Última modificación: 05 de Noviembre 2015, 19:11 por César Krall »

DRANXZ88

  • Avanzado
  • ****
  • Mensajes: 356
    • Ver Perfil
Lo que te recomendaría que tu clase principal el main este aparte no todo dentro de una clase funciona tu código solo que esta mal ordenado tu código falta dividir las clase o ordenar mejor
Por ejemplo le hice algún modificación.
Este seria la clase principal main donde le llama al los otra clase
Código: [Seleccionar]
package odenarprueba;

public class OdenarPrueba {

    public static void main(String[] args) {
        Nombres nom = new Nombres();
        nom.leerDatos();
        nom.ordenar();
        nom.imprimirInfo();
    }

}
Y este seria la clase donde esta el código para ordenar
Código: [Seleccionar]
package odenarprueba;

import java.util.Scanner;

public class Nombres {

    private Scanner teclado;
    private String[] nombres;
    int n;

    public void leerDatos() {
        Scanner entrada = new Scanner(System.in);
        System.out.printf("Dame el numero de nombres a ingresar:\n");
        n = entrada.nextInt();

        teclado = new Scanner(System.in);
        nombres = new String[n];
        for (int i = 0; i < nombres.length; i++) {
            System.out.println("Ingrese el nombre:");
            nombres[i] = teclado.next();
        }
    }

    public void ordenar() {
        for (int j = 0; j < 4; j++) {
            for (int i = 0; i < 4 - j; i++) {
                if (nombres[i].compareTo(nombres[i + 1]) > 0) {
                    String aux;
                    aux = nombres[i];
                    nombres[i] = nombres[i + 1];
                    nombres[i + 1] = aux;
                }
            }
        }
    }

    public void imprimirInfo() {
        System.out.println("NOMBRES:");
        System.out.println("ORDENADOS DE A - Z");
        for (int i = 0; i < nombres.length; i++) {
            System.out.println(nombres[i]);
        }
    }
}

Aunque la clase podía llamarlos con otro nombres que vaya mas por lo que pide se podía dividir con mas clase pero con esto ya tendría que funcionarte.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".