Guarda questo, se non capisci qualcosa chiedi pure.
Main
Coppiacodice:public class Main { public static void main(String[] args) { int[] valori = new int[25]; //Riempio l'array con numeri random compresi tra 1 e 10 for(int i = 0; i < valori.length; i++) { valori[i] = 1 + (int)(Math.random() * 10); } //Stampa dell'array for(int i = 0; i < valori.length; i++) { System.out.print(valori[i] + ","); } System.out.println("\n"); //Calcolo la coppia di numeri che rappresentano il valore //più frequente e con il suo numero di occorrenze Coppia coppia = elementoPiuFrequente(valori); //Stampo la coppia System.out.println("\n" + coppia); } public static Coppia elementoPiuFrequente(int[] valori) { //Variabili utilizzate per costrire la Coppia da ritornare int piuFrequente = -1; int occorrenze = -1; //Variabili temporanee utilizzate per il calcolo int numeroAttuale = 0; int occorrenzeAttuali = 0; for(int i = 0; i < valori.length; i++) { numeroAttuale = valori[i]; occorrenzeAttuali++; for(int j = i + 1; j < valori.length; j++) { if(numeroAttuale == piuFrequente) { break; } if(numeroAttuale == valori[j]) { occorrenzeAttuali++; } } //Controllo se ho trovato un numero con un maggior numero di occorrenze if(occorrenzeAttuali > occorrenze) { //In tal caso aggiorno i valori occorrenze = occorrenzeAttuali; piuFrequente = numeroAttuale; } //Azzerro il numero di occorrenze del numero attuale occorrenzeAttuali = 0; } return new Coppia(piuFrequente, occorrenze); } }
codice:public class Coppia { private int piuFrequente; private int occorrenze; public Coppia(int p, int o) { piuFrequente = p; occorrenze = o; } public void setPiuFrequente(int p) { piuFrequente = p; } public void setOccorrenze(int o) { occorrenze = o; } public int getPiuFrequente() { return piuFrequente; } public int getOccorrenze() { return occorrenze; } @Override public String toString() { String result = "Numero più frequente: " + piuFrequente + " , " + "Occorrenze: " + occorrenze; return result; } }

Rispondi quotando
