Ordinamento di un Array

Questo programma legge una serie di numeri interi e li ordina in modo crescente. Il codice è molto semplice ma importante visto che mostra l'ordinamento di un array tramite una variabile di supporto e un altro array simile al primo.

import prog.io.*;

 

class Ordina {

                public static void main(String[] args) {

                               ConsoleInputManager tastiera = new ConsoleInputManager();

                               ConsoleOutputManager video = new ConsoleOutputManager();

                              

                               //variabile di aiuto

                               int aiuto;

                              

                               //determina la dimensione dell'array

                               int MAX = tastiera.readInt("dimensione dell'array? ");

                              

                               //costruisce l'array

                               int[] numero = new int[MAX];

                              

                               //legge l'array

                               for (int i = 0; i < MAX; i++) {

                                               numero[i] = tastiera.readInt("inserire il " + (i + 1) + " numero: ");

                               }

                              

                               //crea un nuovo array

                               int[] ordine = new int[MAX];

                              

                               //copia il vecchio array sul nuovo

                               for (int x = 0; x < MAX; x++){

                                               ordine[x] = numero[x];

                               }

                              

                               //confronta il primo numero con tutti gli altri e assegna

                               //al primo posto il numero più piccolo

                               for (int x = 0; x < MAX; x++) {

                                               //confronta un numero con il successivo

                                               for (int y = (x + 1); y < MAX; y++) {

                                                               if (ordine[x] > ordine[y]) {

                                                                              aiuto = ordine[x];

                                                                              ordine[x] = ordine[y];

                                                                              ordine[y] = aiuto;

                                                               }

                                                                             

                                               }

                               }

                               //stampa tutti gli elementi dell'array

                               for (int g : ordine)

                                               video.println("; " + g);

                              

                }

}