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);
}
}