sábado, 11 de octubre de 2014

Ordenar de Mayor a Menor Tres Numeros Enteros

PROBLEMA 1. Crear un programa en JAVA que imprima de mayor a menor tres números enteros que el usuario va a ingresar por teclado.

Para la solución del problema planteado crearemos un archivo llamado NumeroMayor.java y en él copiaremos el siguente código
/*
 Descripcion: Ordena en forma descendiente tres numeros enteros ingresados por teclado
 Autor: Edinson Morales
 Fecha: 11 de Octubre de 2014
*/

// pegar codigo debajo

/*Importa la libreria o paquete java.util.*  en donde encontramos la clase Scanner
que usaremos para ingresar y guardar por teclado*/
import java.util.Scanner;

public class NumeroMayor{

 //Metodo principal en donde administro todos los procesos que el programa realice
 public static void main(String[] args){
  //Declaracion de variables tipo entero
   int numeroA, numeroB, numeroC;
  
  //Se crea el objeto "entrada" de la clase Scanner que me permitira guardar lo que ingrese por teclado
  Scanner entrada = new Scanner(System.in);
  
  //Recibo el primer numero por teclado, se pude modificar para que aparezca una ventana
  System.out.println("Ingrese un numero entero: ");
  
  //Lo guardo en la variable numeroA que cree anteriormente
  numeroA = entrada.nextInt();
  
  System.out.println("Ingrese un numero entero");
  numeroB = entrada.nextInt(); //netxInt me permite guardar un numero entero en la variable numeroB
  
  System.out.println("Ingrese un numero entero");
  numeroC = entrada.nextInt();
  
  //comparo cual es el mayor
  
  if(numeroA >= numeroB && numeroB >= numeroC){
   System.out.println("Orden descentente: ");
   System.out.println("numeroA" + " >= " + "numeroB" + " >= " + "numeroC");
  }
  
  if(numeroA >= numeroC && numeroB <= numeroC ){
    System.out.println("Orden descentente: ");
    System.out.println("numeroA" + " >= " + "numeroC" + " >= " + "numeroB");
  }
  
  if(numeroB >= numeroA && numeroA >= numeroC ){
    System.out.println("Orden descentente: ");
    System.out.println("numeroB" + " >= " + "numeroA" + " >= " + "numeroC");
  }
  
  if(numeroB >= numeroC && numeroA <= numeroC ){
    System.out.println("Orden descentente: ");
    System.out.println("numeroB" + " >= " + "numeroC" + " >= " + "numeroA");
  }
  
  if(numeroC >= numeroA && numeroA >= numeroB ){
    System.out.println("Orden descentente: "); 
    System.out.println("numeroC" + " >= " + "numeroA" + " >= " + "numeroC");
  }
  
  if(numeroC >= numeroB && numeroA <= numeroB ){
    System.out.println("Orden descentente: ");
    System.out.println("numeroC" + " >= " + "numeroB" + " >= " + "numeroA");
  }

  //Pegar codigo debajo

 }
}
Compilamos y ejecutamos. En el código está explicado en detalle el significado de cada línea de código.

Vamos a ampliar el código del programa. Editamos el archivo NumeroMayor.java, en la línea 8 copiaremos el siguiente código
import javax.swing.*;

Esta línea nos dice que importaremos el paquete javax.swing.* que nos permitirá mostrar mensajes en pantalla usando ventanas. Para conseguir que aparezcan las ventanas con el mensaje que nosotros deseemos pegaremos en la linea 68 el siguiente código
JFrame frame = new JFrame("NUMEROS ORDENADOS ASCENDENTEMENTE"); // frame es la ventana que contendra nuestro mensaje
JLabel label = new JLabel("Los numeros ingresados fueron: " +  numeroA + ", " + numeroB + ", " + numeroC, JLabel.CENTER);
//label es en donde aparecera nuestro mensaje.
frame.getContentPane().add(label);
frame.setSize(300, 300);
frame.setVisible( true);

Para finalizar guardamos los cambios realizados al archivo compilamos y ejecutamos el programa. En este caso se van a imprimir en pantalla los números que el usuario ingresó por teclado. Podríamos modificar el programa aún mas. Por ejemplo mostrar en pantalla los números ordenados como pide el problema. Pero se queda como ejercicio.

En el grupo de facebook o aquí en comentarios pueden expresar sus dudas o problemas que tengan para que funcione el programa o encontrar la solución al ejercicio planteado al final.

No hay comentarios:

Publicar un comentario