Página 1 de 1

[Java]Organizar Número de Mayor a Menor

Publicado: 09 Sep 2010, 01:35
por wh0!
Bueno, como empezé con JAVA, aquí les traigo un simple código interesante para implementar... no es nada grandioso pero bueno, con esto voy empezando.

PD: Los valores de las variables son aleatorios, puestos por mi.

Código: Seleccionar todo

package ordenar;

public class Main {

    public static void main(String[] args) {

        //DECLARACIONES DE LAS VARIABLES
        int a=18, b=1, c=19, d=35;
        int may1, may2, men1, men2, may3;

        //PROCESO
        if(a>b) {
            may1=a;
            men1=b;
        }
 else {
        may1=b;
        men1=a;
 }
        if(c>d){
            may2=c;
            men2=d;
        }
 else {
        may2=d;
        men2=c;
 }
        if(may1<may2){
            may1=may1+may2;
            may2=may1-may2;
            may1=may1-may2;
        }

        if (men2>men1){
            men2=men2+men1;
            men1=men2-men1;
            men2=men2-men1;
        }
        if (may2<men1){
            may2=may2+men1;
            men1=may2-men1;
            may2=may2-men1;
        }

        //MOSTRAR
        System.out.println("Mayor1 = "+may1);
        System.out.println("Mayor2 = "+may2);
        System.out.println("Menor1 = "+men1);
        System.out.println("Menor2 = "+men2);
    }
}

ByeOff;

Re: [Java]Organizar Número de Mayor a Menor

Publicado: 09 Sep 2010, 02:05
por NARCIS
esto lo vi en mi universidad, Gracias Kane

Re: [Java]Organizar Número de Mayor a Menor

Publicado: 09 Sep 2010, 02:20
por K-0Z
seria mejor si pidiera N numeros y ordenarlos, pero por por algo se empieza , salu2

Re: [Java]Organizar Número de Mayor a Menor

Publicado: 09 Sep 2010, 02:23
por wh0!
Eso ya sería como un programa xD!
esto sólo es una función...
Igual, gracias por la sugerencia se tendrá en cuenta.

ByeOff;

Re: [Java]Organizar Número de Mayor a Menor

Publicado: 09 Sep 2010, 03:59
por NARCIS
K-0Z escribió:seria mejor si pidiera N numeros y ordenarlos, pero por por algo se empieza , salu2
exacto porque hay solo habla de 4 numeros los cuales son los que pusiste encambio si le ponemos variales sin numeros, quedaria mejor ya que seria para todos los numeros que querramos.

Re: [Java]Organizar Número de Mayor a Menor

Publicado: 10 Sep 2010, 18:04
por almabo
Aqui les dejo mi code de como ordenar pero este es para N numeros como habia mencionado K-OZ o sanlegas XD
saludos.

import javax.swing.*;
public class Main {
static int lee(String cadena){
return Integer.parseInt(JOptionPane.showInputDialog(cadena));}

static void ordena(int[] a){
for (int i = 0; i < a.length - 1; i++){
int may = i;
for (int j = i + 1; j < a.length; j++)
{
if (a[j] > a[may]){
may = j;}
}

if (i != may)
{
int aux= a;
a = a[may];
a[may] = aux;
}}}

public static void main(String[] args){
int numeros=lee("INTRODUCE CUANTOS NUMEROS VAS A ORDENAR");
int arreglo[]= new int[numeros];
for(int i=0; i<arreglo.length; i++){
arreglo=lee("Introduce el numero" +(i+1));}
ordena(arreglo);
String salida="";
for(int i=0; i<arreglo.length; i++){
salida+=arreglo+"\n";}
JOptionPane.showMessageDialog(null, salida);

}

}

Re: [Java]Organizar Número de Mayor a Menor

Publicado: 11 Sep 2010, 23:01
por R-007
Si ya lo que quieres es ordenar N enteros lo mejor y más eficiente es usar el quicksort en el vector de enteros

Código: Seleccionar todo

//Recibe un vector de enteros y el índice del primer y último elemento válido del mismo
 
void ordenarQuicksort(int[] vector, int primero, int ultimo){
        int i=primero, j=ultimo;
        int pivote=vector[(primero + ultimo) / 2];
        int auxiliar;
 
        do{
            while(vector[i]<pivote) i++;            
            while(vector[j]>pivote) j--;
 
            if (i<=j){
                auxiliar=vector[j];
                vector[j]=vector[i];
                vector[i]=auxiliar;
                i++;
                j--;
            }
 
        } while (i<=j);
 
        if(primero<j) ordenarQuicksort(vector,primero, j);
        if(ultimo>i) ordenarQuicksort(vector,i, ultimo);
    }