import javax.swing.JOptionPane; public class MediaOpt{ public static void main(String[] args){ // 1. Leggi da tastiera taglia array int n = Integer.parseInt(JOptionPane.showInputDialog(null, "Inserisci la taglia dell'array")); // 2. Crea un array della taglia desiderata // ed inizializzalo con valori casuali // 3. Stampa a schermo il contenuto dell'array // 4. Calcolare la media double[] v; v = new double[n]; double somma = 0.0; for(int i = 0; i < n; i++){ v[i] = Math.random(); somma += v[i]; System.out.print(v[i] + " "); } System.out.println(); double media = somma/n; System.out.println("La media e': " + media); // 5. Calcolare il numero di elementi sotto la media int countUnder = 0; for(int i = 0; i < n; i++){ if (v[i] < media){ countUnder++; } } int countOver = n - countUnder; // 6. Crea gli array underMedia ed overMedia double[] underMedia; double[] overMedia; underMedia = new double[countUnder]; overMedia = new double[countOver]; // 7. Popolare gli array underMedia ed overMedia int j,k; j = k = 0; for(int i = 0; i < n; i++){ if (v[i] < media){ underMedia[j] = v[i]; j++; }else{ overMedia[k] = v[i]; k++; } } // 8. Stampare il contenuto di underMedia ed overMedia System.out.println("Contenuto di underMedia"); for(int i = 0; i < countUnder; i++){ System.out.print(underMedia[i] + " "); } System.out.println(); System.out.println("Contenuto di overMedia"); for(int i = 0; i < countOver; i++){ System.out.print(overMedia[i] + " "); } System.out.println(); } }